Veuillez garder à l'esprit que ce n'est pas un autre "Combien de [ insérer le langage de programmation ici ] dois-je savoir avant de passer à [ insérer le cadre ici ]?" Ce que j'aimerais savoir, c'est à quel point il est avantageux d'apprendre ces concepts avancés d'un langage de programmation lorsque votre intention est de s'appuyer fortement sur son cadre la majorité du temps. Ainsi, par exemple, j'ai commencé à utiliser jQuery et j'ai d'abord pris le temps de vraiment comprendre les concepts fondamentaux de Javascript. De plus, j'ai quelques livres au-delà des bases (Secrets of a Javascript Ninja par exemple) sur l'étagère qui plongent vraiment dans le langage. En parcourant les pages, je trouve qu'une bonne partie de cela ne se répercute pas sur jQuery étant que mon intention principale est la manipulation DOM.
La même chose peut être dite pour Ruby et RoR. Ces livres feront-ils de moi un meilleur programmeur dans l'ensemble? Probablement. Ces sujets peuvent-ils m'aider à devenir encore mieux avec son cadre? C'est ce que j'ai du mal à comprendre.
la source
Réponses:
Il est plus important d'étudier la langue que d'étudier le cadre. Apprenez bien la langue et vous utiliserez bien le framework.
Par ordre d'importance (le plus important en premier):
la source
Bien sûr. La question est "cet avantage vaut-il l'investissement en temps?". Je dirais que c'est toujours le cas, mais cela dépend certainement de vous et de votre environnement, car ils auront un impact sur les avantages (combien votre environnement gagnera de vos connaissances) par rapport au coût (combien de temps vous faut-il pour apprendre et dans quelle mesure vous absorber les connaissances).
Pourquoi dirais-je que c'est bénéfique? Parce que vous ne serez pas toujours dans le cadre. Même le cadre le plus complet fait toujours partie d'un écosystème plus vaste. Vous ne pouvez pas effectuer d'appels jQuery seuls. Vous devez savoir comment lier votre script à la page, comment il s'exécute, comment il interagit avec les choses que vous voulez faire. Cela peut être des "bases" dans votre livre, mais j'ai toujours trouvé que des connaissances plus approfondies m'ont aidé à accélérer le code et à déboguer les problèmes plus rapidement. Cadre ou pas.
Au-delà de cela, le monde réel a la mauvaise habitude de s'immiscer dans les programmeurs. Bien sûr, votre tâche aujourd'hui peut être de faire quelques manipulations DOM, mais demain vous devrez peut-être câbler certains SWFObject. Une bonne base vous permettra de vous adapter plus facilement aux environnements changeants.
Et enfin, même si vous ne souhaitez que faire de la manipulation DOM, très peu de programmeurs travaillent seuls. Vos pairs feront probablement des choses plus avancées avec le langage de programmation. Vous devrez être capable de lire ce code, ou à tout le moins, de ne pas le bousiller.
la source
Il vous faudra probablement un peu d'équilibre dans le montant que vous devriez apprendre. Ce n'est pas tout ou rien, alors mettez autant de temps que possible. Vous devez vous demander quels risques vous êtes prêt à accepter en vous appuyant sur le cadre.
C'est génial si tout ce dont vous avez besoin est d'obtenir un produit minimum viable et opérationnel. Il n'y aura pas de performances énormes ni de problèmes complexes. Cela suppose que vous avez choisi un cadre capable de gérer ce que vous essayez de créer.
De l'autre côté du spectre, c'est si vous travaillez sur une application assez grande / complexe et que vous trouvez quelque chose que le cadre gère mal. Pas de gros problème, vous finissez donc par avoir à apprendre plus de JavaScript. Vous auriez dû y consacrer ce temps si vous l'aviez appris dès le début. Mais avez-vous le temps? Serez-vous en mesure d'apprendre les principes fondamentaux sous le stress de ne pas faire quelque chose à temps? Personne ne peut répondre à cela.
L'équilibrer est probablement le meilleur pari. Votre rythme. Apprenez un peu de JavaScript si vous le pouvez. Vous ne pouvez pas devenir un expert, mais ce n'est pas une raison pour l'ignorer. Les cadres ont été créés par des personnes qui avaient besoin de résoudre un problème similaire au vôtre, mais pas exactement le vôtre.
la source
Un domaine général qui souffre de fouiller dans le cadre (s) avant de bien connaître le langage de base est la performance. Cela est vrai pour toutes les langues / plates-formes ( Hibernate n + 1 sélectionne etc.). Voici beaucoup de conseils JQuery et astuces qui comptent (entre autres) sur une bonne connaissance de la langue de base par rapport à la performance:
la source
Je pense que votre question est basée sur une fausse prémisse. Vous commencez par dire que vous prévoyez de vous appuyer sur un cadre, puis vous demandez s'il est avantageux d'apprendre au-delà du cadre. Alors bien sûr, vous arrivez à la conclusion que cela n'en vaut pas la peine. Mais cette prémisse est erronée. Vous ne devez pas vous concentrer sur l'utilisation d'un framework. Vous devez vous concentrer sur l' utilisation du bon outil pour le bon travail . jQuery est vraiment bon pour certaines tâches, tout comme Ruby on Rails ou tout autre framework. Mais ils ne sont pas toujours le bon outil pour tout. En savoir plus sur le langage au-delà du cadre, et même sur d'autres cadres ou microframes ou autres outils, vous aide à identifier quand votre cadre se met en travers de votre chemin plus qu'il ne vous aide, et vous donne la possibilité d'en rechercher d'autres,
Ma réponse est donc: oui, cela en vaut vraiment la peine car le cadre n'est pas le bon outil pour chaque travail.
la source