9
votes

Les développeurs Web devraient-ils toujours apprendre JavaScript?

Maintenant que ces cadres tels que GWT, Morfik, etc., qui compilent le code côté client Java dans des dialectes JavaScript majeurs, est-ce que cela vaut toujours la peine d'apprendre JavaScript?


0 commentaires

10 Réponses :


49
votes

dans mon livre, oui .

Je suis un croyant fort pour comprendre la technologie sous-jacente située sous toutes les annuelles que vous utilisez.

Les abstractions sont des fuites - vous rencontrez des ennuis dans la ligne si vous essayez de vous échapper uniquement à la compréhension d'une boîte à outils de haut niveau et non de la technologie sous-jacente. Tôt ou tard, vous devrez déboguer votre projet au niveau JavaScript (ou autre).


3 commentaires

Pas vraiment la peine de sa propre réponse, alors mettez ici. Si vous utilisez l'un des convertisseurs Java-> JavaScript, vous perdez de nombreuses fonctionnalités JavaScript telles que la typage dynamique et la possibilité d'utiliser des fonctions comme des objets appropriés. Je ne vois pas vraiment pourquoi les gens regardent JavaScript comme langue basse niveau. Combiné à des cadres (écrits en JavaScript) tels que JQuery, c'est une langue facile à utiliser et puissante.


@Macha: bien dit. JS dans son propre droit est extrêmement puissant (et très différent de Java). Pourquoi couvre-toi avec des abstractions?


D'accord. Utiliser des trucs comme GWT sans savoir que JS est comme en utilisant un outil de base de données sans savoir SQL. Bien que cela puisse fonctionner, vous allez obtenir de meilleurs résultats si vous savez réellement ce qui se passe.



12
votes

Comprendre la technologie derrière votre cadre réduit les dépenses de temps consacrées à la débogage des choses que vous faites avec votre cadre. Donc, à mon avis, il est toujours bon de savoir ce qui se passe derrière la scène.


0 commentaires

4
votes

Étirement de cette autre ...

Devriez-vous apprendre la langue de l'assemblée maintenant avec tant de langues de niveau supérieur?
Si vous apprenez à faire une arithmétique de base comme une soustraction et une addition à la main lorsque nous avons maintenant une calculatrice et un ordinateur qui peut le faire pour vous?

Eh bien, je dirais peut-être que vous n'aurez peut-être pas besoin de si vous n'avez aucune raison d'aller au fond, mais que quelqu'un devra toujours.

Comme pour toutes choses, il y a un équilibre. Sachez que ce sera à votre inconvénient si vous ne connaissez pas les trucs de niveau inférieur, mais il est parfois nécessaire de le sauter afin que vous puissiez être au fond de quelque chose d'autre. Vous devez admettre qu'il y a tellement de technologies là-bas que vous ne pourrez pas être un expert en toutes choses. Dans ce cas, connaître quelqu'un d'autre qui fait est une bonne chose.

Alors choisissez votre choix et allez avec ce qui vous intéresse. Si vous pensez que vous êtes intéressé à apprendre JavaScript, allez-y. Sinon, vous pouvez vous en tenir à votre niveau d'abstraction et obtenir un ami JavaScript qui peut vous aider lorsque vous êtes coincé.


0 commentaires

8
votes

oui,

... et je parle avec l'expérience: Je n'ai jamais appris JavaScript et je n'ai utilisé que des parties, lorsque je l'ai rencontrée dans Google Recherches de questions.

Maintenant que je construis une application Web, je remarque que toutes les abstractions de JavaScript n'ont pas la fonctionnalité souhaitée et je dois entrer dans JavaScript pour le résoudre.

Je remarque que je manque les connaissances fondamentales que j'ai avec d'autres langues, tout comme me manquer le livre "JavaScript Programming Language" (je ne suis pas sûr qu'il existe, mais j'ai des copies similaires pour C, C ++ et Java). Donc aujourd'hui j'ai commandé JavaScript: Les bonnes parties et je l'apprendra ...


3 commentaires

Les bonnes parties de Crockford ne sont pas vraiment un livre de débutant. Je vous suggère d'abord de commencer avec JavaScript de Flanagan dans le guide définitif, puis passez à la bonne partie. Amazon.com/javascript-Definitive-Guide-David-Flanagan/ DP / ...


Je suggérerais de référencer les deux; Pour les caractéristiques de la langue que Crockford quitte les bonnes parties, je ne passerais pas trop de temps à les étudier tout en lisant le guide définitif. Vous pourriez éventuellement comprendre ces fonctionnalités, mais une partie du point de Crockford est qu'une bande de choses dans la langue javascript était mal conçue et ne devrait vraiment pas être là. J'ai constaté que, pour la plupart, j'ai accepté avec lui. (J'ai également appris un montant équitable de lui.)


Dreas: Merci pour la pointe, je vais obtenir le livre bientôt afin que je puisse voir si je manque encore des fondamentaux. Notez que j'ai déjà appris beaucoup de langues différentes, alors je comprendrai probablement plus d'autant qu'un débutant complet.



3
votes

Je pense que la réalité des bugs de navigateur permettra de pouvoir diagnostiquer et comprendre le JavaScript généré pendant une longue période. J'ai travaillé avec une société de tableur pour OS / 2, et ils ont dû lire l'assembleur généré à partir du code C ++ car le compilateur IBM générerait parfois du code de machine à buggy. Donc, alors qu'ils n'auraient peut-être pas assez d'assembleur pour écrire un projet entier, ils ont certainement dû connaître suffisamment pour suivre les problèmes.

Cela étant dit, de nombreux cadres Web vous ont besoin de coder votre propre JavaScript et d'une boîte à outils donnée ne fera pas nécessairement tout ce que vous devez faire sans écrire directement de JavaScript. Vous pouvez choisir des cadres qui l'évitent si vous préférez, mais ce n'est pas du tout évident que, contrairement à Say Assemileur pour le développement d'applications, la communauté de développement Web a décidé de résumer toute implication. Vous pourriez bien vous retrouver sur des projets qui en ont besoin.


0 commentaires

7
votes

absolument . À mon avis, l'abstraction est importante, mais sachant comment cette abstraction fonctionne de manière égale aussi importante.

J'ai vu des développeurs qui vivent et mourris par leurs cadres (JavaScript: JQuery, Yui, etc ... ou PHP: Zend, Cake, etc ...), mais n'a aucune idée de quoi faire quelque chose de productif sans eux .

Qui préféreriez-vous être (ou embaucher)? Le gars qui sait comment tout fonctionne, mais améliore sa productivité en utilisant des cadres et des bibliothèques ... ou le gars qui utilise ces ressources sans aucune idée de la façon dont ils fonctionnent réellement?


0 commentaires

1
votes

En réalité, dessiner un parallèle au langage de montage est un peu manquant le point. L'assemblage était spécifique à la plate-forme et le passage à C a permis à un certain niveau d'agnosticisme de la plate-forme, permettant au développeur d'être plus productif sur plusieurs plates-formes. Par conséquent, il y avait un effet de productivité réel.

Apprendre toutes vos riches côtelettes Web sur quelque chose comme GWT est plus limitée. Après tout, sur la base de Java, et le Web est beaucoup plus important que Java. Vous seriez sérieusement vous limiter si tout ce que vous savez est GWT mais pas le fonctionnement intérieur du JavaScript généré (ne peut pas commenter Morfik comme je ne le sais pas).

Cependant, employant quelque chose comme JQuery afin d'être plus productif lors du codage JavaScript est bien meilleur. JQuery peut être utilisé sur n'importe quel navigateur exécutant sur n'importe quel système d'exploitation, de sorte qu'il ne vous limite pas.


0 commentaires

1
votes

Je dirais oui. J'ai rencontré des personnes qui ont prétendu savoir javascript, quand tout ce qu'ils pouvaient faire est de faire quelques appels de fonction JQuery. JavaScript (Ecmascript) est une belle langue (OK, pas si peu).

Abstraction d'un peu de JavaScript - Définir "la peine d'apprendre". Ce genre de pensée était toujours une énigme pour moi. Êtes-vous, par hasard, peur d'apprendre quelque chose de nouveau?

Je suppose que ce genre de pensée est ce qui sépare vraiment un codeur d'un programmeur.


0 commentaires

1
votes

Un développeur Web qui ne connaît pas JavaScript est comme un mécanicien automobile qui ne sait pas comment changer de pneu.


0 commentaires

0
votes

JavaScript est le noyau du développement interactif côté client. C'est absolument essentiel. Après avoir connu JavaScript, vous pourriez décider d'essayer d'autres choses compilées à JavaScript si vous les trouvez plus faciles.

Aussi si vous souhaitez travailler professionnel dans le développement Web pour une société, vous devrez connaître JavaScript. En outre, JavaScript devient de plus en plus populaire car l'exécution de la langue dans le navigateur devient plus rapide et qu'elle devient également plus populaire dans le développement côté serveur.


0 commentaires