06-09-2015, 10:57 AM
Tu dois forcément faire des choix. Construire sans framework est un choix, et il te lie tout autant que de construire avec un framework. Quand tu utilises un framework open source, tu n'es pas obligé de suivre les dernières versions. Parfois certaines technologies cassent la rétrocompatibilité pour pouvoir avancer, ça ne veut pas dire que l'ancienne version n'est plus maintenue ou cesse subitement d'être fonctionnelle.
Un exemple concret où les framework Javascript (côté client) sont utiles, c'est pour créer des interfaces très dynamiques, qui fonctionnent sans aucun rechargement, se tenant à jour "toutes seules".
Exemple : tu implémentes un jeu de type Pokémon : un personnage se déplace, il croise le personnage d'un autre joueur, un combat commence sur l'écran des deux joueurs, tu vois les choix de ton adversaire en temps réel, tu envoies tes attaques, lui les siennes, tu utilises un objet, et ainsi de suite jusqu'à la fin du combat. Tu regardes ton inventaire (donc dans un tout autre "écran" que celui de combat) : la quantité de l'objet à bien été mise à jour, de même pour le nombre de PV de tes pokémons, etc.
Créer ça sans un framwork, complètement à la main, ou même "juste" avec jQuery, c'est un travail conséquent qui requiert beaucoup de code, ça devient vite pénible à maintenir. Tu finiras par en avoir marre et — comme tu es parti sans rien — tu vas probablement créer ton propre framework, qui — selon tes choix de conception — finira par ressembler à Angular, ou à React, ou à Backbone, ou à Knockout, ou à la dizaine d'autres qui existe. Alors certes tu le maîtriseras et le fera évoluer comme tu veux, mais ça va consommer ton temps et ça sera également une dépendance, même si elle t'appartient.
Un exemple concret où les framework Javascript (côté client) sont utiles, c'est pour créer des interfaces très dynamiques, qui fonctionnent sans aucun rechargement, se tenant à jour "toutes seules".
Exemple : tu implémentes un jeu de type Pokémon : un personnage se déplace, il croise le personnage d'un autre joueur, un combat commence sur l'écran des deux joueurs, tu vois les choix de ton adversaire en temps réel, tu envoies tes attaques, lui les siennes, tu utilises un objet, et ainsi de suite jusqu'à la fin du combat. Tu regardes ton inventaire (donc dans un tout autre "écran" que celui de combat) : la quantité de l'objet à bien été mise à jour, de même pour le nombre de PV de tes pokémons, etc.
Créer ça sans un framwork, complètement à la main, ou même "juste" avec jQuery, c'est un travail conséquent qui requiert beaucoup de code, ça devient vite pénible à maintenir. Tu finiras par en avoir marre et — comme tu es parti sans rien — tu vas probablement créer ton propre framework, qui — selon tes choix de conception — finira par ressembler à Angular, ou à React, ou à Backbone, ou à Knockout, ou à la dizaine d'autres qui existe. Alors certes tu le maîtriseras et le fera évoluer comme tu veux, mais ça va consommer ton temps et ça sera également une dépendance, même si elle t'appartient.