IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Les développeurs devraient-ils tous apprendre JavaScript ?
Maarten estime que ce langage est présent partout et son apprentissage inévitable

Le , par Olivier Famien

45PARTAGES

8  0 
Les développeurs devraient-ils tous apprendre JavaScript ?
Non, il n'est pas nécessaire pour tous les développeurs d'apprendre JS
70 %
Oui, les développeurs devraient tous apprendre JavaScript
27 %
Je n'ai pas d'avis
2 %
Voter 44 votants
JavaScript est un langage de scripts apparu en 1995 à la demande de Netscape. L’objectif était de créer un langage permettant de manipuler les documents HTML. À cette époque, nombreux sont ceux qui avaient peu d’égards pour ce langage. Mais au fil des années, ce langage va gagner en maturité avec plusieurs outils et bibliothèques qui vont venir enrichir cet outil.

Lorsqu’il a été créé, probablement ses auteurs ne prévoyaient pas une si forte adoption ainsi que les nombreuses implémentations dérivées. Mais à mesure que les années sont passées, des efforts ont été consentis afin de faire de cet outil, un langage largement utilisé.

Maarten Huijsmans, ingénieur back-end et cloud, qui a analysé l’histoire de JavaScript depuis ses débuts jusqu’à présent estime que les développeurs devraient apprendre JavaScript, car ce langage est incontournable. Pour mieux étayer ses propos, Maarten parcourt l’évolution de ce langage depuis ses débuts jusqu’à nos jours.

Avant les années du web 2.0, JavaScript était beaucoup utilisé sur la toile, mais souffrait également de nombreux défauts tels que la lenteur. Il faudra donc attendre l’année 2008 pour voir une amélioration significative s’opérer en ce qui concerne les performances de cet outil.

En effet, vu l’intérêt porté à ce langage, Google développe le moteur JavaScript V8 afin d’offrir de meilleurs outils pour ce langage. Cette initiative a largement favorisé l’adoption de cette technologie. En 2009, Ryan Dahl lance le projet de porter JavaScript du côté serveur. Cela a donné naissance à l’environnement de développement client-serveur Node.js qui a par ailleurs contribué à accélérer l’adoption des Websockets.

Et depuis le lancement de Node.js, JavaScript est devenu le langage le plus populaire sur plateforme Github. Jusqu’à la fin de l’année dernière, ce langage était le plus actif des langages sur cette plateforme. Tiobe qui effectue également un classement mensuel des langages de programmation a sacré JavaScript comme langage de l’année 2014.

En outre, Maarten souligne que depuis la sortie de Node.js, plusieurs outils n’ont eu de cesse de voir le jour. Il y a par exemple le gestionnaire des installations npm qui a été créé pour faciliter l’installation des bibliothèques. Browserify et Babel ont été conçus afin d’écrire du code comme on le ferait avec Node.js. Gulp et Grunt permettent d’automatiser les tâches, les builds, les workflows. Angular et React ont été mis en œuvre pour créer des interfaces utilisateurs. CoffeScript et TypeScript vont encore plus loin avec JavaScript.

En dehors des différentes implémentations, Maarten fait remarquer que JavaScript s’exécute aussi bien sur les navigateurs, dans la partie back-end avec Node.js, que sur le mobile avec cordova, ionic, react native, etc.

Loin de s’arrêter, ce langage s’invite également sur la plateforme de l’internet des objets (avec le moteur JerryScript de Samsung) et les moteurs de stockage de données. Avec MongoDB par exemple, il est possible d’écrire des scripts shell mongo en JavaScript. Ainsi, son utilisation traverse l’ensemble des plateformes disponibles.

De même, ajoute-t-il, un des avantages tirés de la popularisation de JavaScript est que les développeurs peuvent utiliser ce langage-là où il fallait auparavant utiliser d’autres technologies. Dans une application client-serveur par exemple, la maitrise de JavaScript et des frameworks dérivés pourrait permettre à une seule équipe homogène de gérer aussi bien la partie front-end que la partie back-end.

Au vu de tous ces avantages et cette forte compatibilité avec un grand nombre de plateformes, Maarten entrevoit JavaScript non plus comme un langage de scripts, mais plutôt comme un véritable outil incontournable.

Pour lui, en considérant sa forte progression et son omniprésence dans de nombreux domaines, cet outil n’est pas prêt de disparaître dans les prochaines décennies, loin de là. C’est pourquoi il recommande aux développeurs d’apprendre et d’adopter JavaScript.

Source : Medium

Et vous ?

Pensez-vous que JavaScript est incontournable ?

Les développeurs devraient-ils tous apprendre JavaScript ?

Voir aussi

Forum JavaScript

Une erreur dans cette actualité ? Signalez-nous-la !

Avatar de Sodium
Membre extrêmement actif https://www.developpez.com
Le 18/11/2015 à 9:10
Pourquoi tous les développeurs devraient-ils apprendre le javascript ?
Si son domaine amène à bosser avec du Javascript, oui évidemment, il faut le connaître. Dans le cas contraire, pourquoi faire ?
JavaScript est un langage incontournable dans le domaine du web parce qu'il est omniprésent. Il est par contre loin d'être incontournable en tant que langage de programmation. On l'utilise par défaut, pas par choix.
Certains me parleront de Node.js, etc. D'accord, mais là encore une fois JavaScript est utilisé pour les performances de la solution à laquelle il est lié, pas parce que c'est un langage fantastique.
9  0 
Avatar de grunk
Modérateur https://www.developpez.com
Le 18/11/2015 à 8:24
La quantité d'alternative à javascript (typescript , coffeescript, Dart , asm , AtScript et j'en passe) est symptomatique de l'état de JS. Si le langage était si bon il n'y aurait pas besoin de passer par une alternative (qui au final génère du JS , mais abstrait tous les truc chiant de JS).
Un non initié qui débarque la dedans va vite avoir du mal à comprendre pourquoi.

A mon avis tant que ES6 (qui va dans le bon sens) n'est pas largement supporté c'est pas un cadeau pour les développeurs d'apprendre le JS.

Ca fait plus de 10 ans que je fait du JS , je développe aussi quasi quotidiennement en Java, C++ ou PHP et revenir à JS c'est une punition à chaque fois que je peux pas utilisé une alternative (typescript dans mon cas). Après j'ai jamais eu le besoin de l'utiliser coté serveur puisque les autres langage que j'utilise le font très bien , mais je suis pas convaincu que ça change grand chose au problème.
11  3 
Avatar de goldbergg
Membre averti https://www.developpez.com
Le 18/11/2015 à 10:54
Se dialogue me fait penser à celui certain devs PHP il y a quelques années qui ventait le PHP comme le "best langage" à tout faire... Or dans la pratique c'est complètement faux.

Le js (le vrai, pas une surcouche a la mode) est un excellent langage que j'adore utiliser, une fois qu'on a compris comment il fonctionne, il est extrêmement simple à utiliser et est aux possibilités énormes.

Mais il ne faut pas se leurrer, tous les devs ne font pas du web et pour ceux qui font du web, ils ne font pas spécifiquement du code client ni du node.js, donc pour tous ceux là le JS n'a aucun intérêt. (oui, je sais on peut faire bien plus que du web avec le js, mais pour moi cette alternative s'adresse avant toutes à ceux qui connaissent déjà le js)

C'est un peux comme le C++ , pour les devs qui font du temps réel ou du système, connaitre ce langage est limite incontournable, pour moi qui suit orienté informatique de gestion, comparé à du C# ou du Java le C++ n'a aucun intérêt.

Bref, au même titre que les devs PHP dont je parlais plus haut, je ne vois ici que le dialogue d'une personne qui vante son langage favori
7  0 
Avatar de Iradrille
Expert confirmé https://www.developpez.com
Le 18/11/2015 à 18:17
Citation Envoyé par yoyo88 Voir le message
sérieusement ?

une classe simple en TypeScript
[...]
Code générer en JS une fois compilé
[...]
Justement, JS n'est PAS un langage objet "classique" (type C++ / Java / C# / autre..), l'approche est différente. Beaucoup de gens voient le JS comme un langage objet avec une syntaxe dégueu pour les classes; alors que le concept de classes n’existe tout simplement pas.
6  1 
Avatar de Iradrille
Expert confirmé https://www.developpez.com
Le 18/11/2015 à 10:46
Citation Envoyé par heid Voir le message
"Tout ce qui est possible de développer sera un jour fait en JS"
J'ai hâte de voir une machine virtuelle JS faite en JS .

JS est incontournable si on bosse dans le oueb (faute de choix), sinon c'est qu'un langage médiocre parmi d'autres.
4  0 
Avatar de Issam
Membre confirmé https://www.developpez.com
Le 18/11/2015 à 13:34
"Tout ce qui est possible de développer sera un jour fait en JS"
il était sûrement bourré .
4  0 
Avatar de frfancha
Membre éprouvé https://www.developpez.com
Le 18/11/2015 à 16:58
Javascript est un élégant language fonctionnel avec héritage par prototype.
Une fois qu'on l'utilise comme cela, et pas à tort et à travers, il n'y a pas grand chose à lui reprocher.
3  0 
Avatar de
https://www.developpez.com
Le 18/11/2015 à 20:30
Je ne connais rien à Javascript mais j'ai bien ri en lisant ce commentaire sur la page originale :


Your thesis can be summarized as follows: “eat shit, millions of flies can’t be wrong”.
3  0 
Avatar de AoCannaille
Expert confirmé https://www.developpez.com
Le 19/11/2015 à 14:53
Citation Envoyé par goldbergg Voir le message
le JS est un langage simple (je le penses vraiment), mais uniquement a partir du moment ou l'on a chercher a le comprendre
La mécanique quantique c'est simple, mais uniquement à partir du moment ou l'on cherche à la comprendre

Ta phrase me rappelle celle là : "Il comprend vide mais il faut lui expliquer longtemps"

je comprends bien qu'il y a un paradigme majeur dans le javascript que peu de personnes exploitent. Mais pourquoi? Ne serai-ce pas justement parce que ce paradigme est moins naturel et plus alambiqué que les autres ?
Auquel cas ce n'est plus le JS qui est compliqué, mais son pradigme principal.

Concrètement ça change quoi vis-à-vis du développeur? Il y a toujours une marche relativement grosse à franchir pour ne pas faire du travail moisi en Javascript (ou VanillaJS si vous préférez )
3  0 
Avatar de SylvainPV
Rédacteur/Modérateur https://www.developpez.com
Le 19/11/2015 à 16:12
Citation Envoyé par AoCannaille Voir le message
je comprends bien qu'il y a un paradigme majeur dans le javascript que peu de personnes exploitent. Mais pourquoi? Ne serai-ce pas justement parce que ce paradigme est moins naturel et plus alambiqué que les autres ?
J'ai appris la POO par prototype plusieurs années après avoir pratiqué la POO par classes, surtout en Java et C#. Si on se concentre sur les différences fondamentales, sans parler de syntaxe ou de fonctions avancées, je trouve la POO par prototype plus simple car les concepts d'instance et de classe sont regroupés en un seul et même concept, celui de l'objet (prototypé). Il paraît également plus "naturel" car expose un niveau d'abstraction inférieur à celui des classes (une classe seule ne sert à rien, on utilise les instances d'une classe, tandis qu'on peut toujours utiliser un objet prototypé sans se préoccuper de savoir s'il est le prototype d'autres objets ou pas)

Pourquoi son manque de popularité ? J'ai quelques hypothèses :
- le fait qu'il ne soit pas ou très rarement enseigné en école ou dans les cours en ligne, où la POO par classe est souvent le seul paradigme enseigné en matière de POO ; au point que pour beaucoup, POO = classes
- le fait qu'il soit sous-représenté dans les langages dominants (Java, C++, C#, PHP, Python, Ruby etc... utilisent tous des classes)
- le fait que son seul représentant vraiment populaire, JavaScript, a été détourné dans sa conception originelle pour mieux coller au "style Java" (on peut remercier Sun pour ça, qui au passage a changé le nom d'origine "LiveScript" ; les constructeurs, l'opérateur instanceof et les ""classes"" ES6 témoignent encore de cet état de fait
- 20 ans de POO par classes qui ont ancré de profondes habitudes chez les développeurs, avec des réflexes et des façons de penser qui ne peuvent pas s'appliquer directement avec des prototypes. Il faut réapprendre les bases et ce n'est pas facile, beaucoup ont essayé les prototypes mais ne parvenaient pas à sortir de leurs patterns classiques, ce qui se soldait par un échec et donc une mauvaise impression de la POO par prototype.

Dans tous les cas je pense qu'il faut aller plus loin que le raisonnement "si c'est pas connu, c'est que ça doit pas être bien". Plutôt que faire des assomptions, je vous encourage à apprendre et à expérimenter d'autres paradigmes, pour voir leurs avantages et inconvénients. Cela permet de prendre du recul sur son style de développement, et de s'améliorer en tant que développeur même sans changer de techno/langage.
4  1