Developpez.com

Le Club des Développeurs et IT Pro

JavaScript serait le langage de programmation le plus populaire

Selon l'indice RedMonk, basé sur GitHub et les sites d'entraide

Le 2012-09-17 15:23:22, par Nissa Comet, Expert confirmé
Entre popularité et préférence, quel est le meilleur critère pour classer les langages de programmation ? Le bureau d’analyse RedMonk les classe en fonction de leur popularité au sein de la communauté des développeurs sur les sites GitHub et StackOverflow.

Le classement de RedMonk révèle un tout autre résultat comparé au classement par l’indice de TIOBE que nous relevons périodiquement sur Developpez.com. En effet, chez RedMonk on retrouve JavaScript en tête de liste, suivi de près par Java, PHP, Python et Ruby, puis nous avons de la sixième à la neuvième place les langages C#, C++, C et Objective-C.
D’un autre côté, l’indice TIOBE place le langage C au top de son classement et le déclare comme étant le langage le plus populaire suivi par Objective-C, C++ et C#. Par la suite, nous retrouvons PHP, Visual Basic, Python, Perl et Ruby.

À titre de comparaison, le classement RedMonk se base sur les langages de programmation répandus dans les projets qui publient leur code sur GitHub. Il se base aussi sur le nombre d'interactions autour d'un langage particulier sur StackOverflow.


Classement RedMonk

Quant à lui, l'indice TIOBE est un indicateur de popularité plus général. Le classement fourni par cet indice est fondé sur une estimation du nombre d'ingénieurs qualifiés dans le monde entier. Il s’inspire aussi lors de ses évaluations de la quantité de recherches lancées sur différents moteurs et services, tels que Google, Bing, Yahoo!, Wikipedia, Amazon, YouTube et Baidu.


Classement Tiobe — septembre 2011 ~ septembre 2012

On peut donc s'apercevoir indubitablement qu'aucun des deux indices n'est parfait. RedMonk tend à favoriser les langages orientés Web, généralement libres et dotés d'une forte communauté open source, alors que Tiobe pourrait faire pencher la balance en faveur des langages difficiles d'accès ou mal documentés.

La vérité est certainement à mi-chemin entre ces deux approches, mais laquelle vous en semble-t-elle la plus proche ?

Sources : Tiobe, RedMonk
  Discussion forum
31 commentaires
  • marts
    Membre averti
    Envoyé par moriarti13
    node.js je veux bien, mais Javascript est une technologie cliente, jusqu’à preuve du contraire, donc en faire une techno serveur...

    pour s'amuser si on veut, mais au niveau professionnel, c'est à abolir définitivement.
    Javascript n'est pas une techno cliente en soi, c'est un langage de script (qui n'a rien de moins que PHP ou Python ...).
    Le faire tourner sur un serveur n'a rien d' "amusant", et rien ne justifie que ce soit "à abolir définitivement".
    Ce n'est pas parce qu'il est traditionnellement utilisé pour manipuler le DOM dans une page web qu'il ne peut pas manipuler d'autres objets dans un autre environnement.
    Décidément la méconnaissance et les préjugés sur Javascript ont la vie dure ...
  • transgohan
    Expert éminent
    Le classement Redmonk n'offre que peu d'intérêt, ils ne le font qu'à partir d'un nombre restreint de sources... Seulement deux communautés ? En général une communauté se forme autour d'une (à quelques) technologies donc c'est normal de retrouver des files de tête...
    Même sur developpez on remarque certains sous-forum qui sont moins utilisés que d'autre. Cela ne signifie pas pour autant que ces technologies sont peu utilisées et appréciées.

    alors que Tiobe pourrait faire plancher la balance en faveur des langages difficiles d'accès ou mal documentés.
    Totalement d'accord sur ce point, ce n'est pas plus représentatif de ce qu'ils cherchent à montrer.

    Toujours est-il que de par mon expérience c'est le classement Tiobe qui est le plus proche de ce que je vois. Mais bon... Vu ce qu'ils utilisent pour le réaliser je dirai plus que c'est un coup de bol qu'on tombe d'accord.
  • Javascript est en tête des stats, ce n'est pas étonnant.

    Côté serveurs, vous avez des dizaines de technos possibles : Java, Php, Python, Ruby, Javascript ...

    Côté client (pour du web), pour gérer les interactions, vous n'avez pas trop le choix : c'est Javascript (les autres solutions sont ultra minoritaires).

    Donc les stats des langages serveurs sont éparpillées, alors que Javascript réussit à s'imposer quelque soit la techno.

    CQFD
  • Bovino
    Rédacteur
    Envoyé par moriarti13
    Je réitère mes propos en connaissance de cause .
    Bien avant l'apparition de tous ces frameworks et autres, qui ne font qu'émuler des fonctionnalités serveur., Javascript a toujours été utilisé en tant que technologie cliente, c'est un fait et non un préjugé, ce langage a été crée pour cela, c'est sa nature en quelque sorte.

    Après si ça vous plait de d'en faire un langage serveur alors qu'il n'a ni la puissance, ni la sécurité pour le faire, libre à vous.


    JavaScript est à la base un langage de script serveur... sous son ancien nom de LiveScript.
    Ensuite, on en retrouve des déclinaisons dans beaucoup d'environnements (notamment presque tous les produit Adobe) et depuis fort longtemps.
    Sans parler de JScript qui était tellement intégré dans Windows que sa partie navigateur a fait tant pester les développeurs du fait de sa non compatibilité.
    Envoyé par stailer
    Aujourd'hui faire du web sans Javascript c'est impossible, autant pas faire de web
    Tout à fait d'accord !
  • marts
    Membre averti
    Envoyé par moriarti13
    Je réitère mes propos en connaissance de cause .
    Bien avant l'apparition de tous ces frameworks et autres, qui ne font qu'émuler des fonctionnalités serveur., Javascript a toujours été utilisé en tant que technologie cliente, c'est un fait et non un préjugé, ce langage a été crée pour cela, c'est sa nature en quelque sorte.

    Après si ça vous plait de d'en faire un langage serveur alors qu'il n'a ni la puissance, ni la sécurité pour le faire, libre à vous.
    Je réitère donc que tu ne sais pas de quoi tu parles.

    Oui Javascript a toujours été utilisé en tant que techno cliente, je n'ai pas dit le contraire (j'ai même dit la même chose), et ce n'est pas là-dessus que je parlais de préjugés, mais plutôt sur : "en faire un langage serveur alors qu'il n'a ni la puissance, ni la sécurité pour le faire".

    Ce ne sont pas des frameworks qui font que Javascript est utilisable côté serveur, ce sont des interpréteurs et des librairies. Il n'y a aucune émulation dans l'histoire. Javascript sur un serveur fonctionne exactement de la même manière que PHP, par exemple.

    Et question puissance et sécurité, ce ne sont pas des caractéristiques du langage mais de chaque implémentation distincte. Javascript n'est pas moins puissant ou sécurisé que d'autres langages interprétés.
  • stailer
    Membre chevronné
    Dés qu'on fait du .Net ou Java on utilise Javascript ??? Ah bon ?
    Pour le web,99% du temps, oui.

    ASP.NET, ASP.NET MVC...Même certains projets Sharepoint.

    EXCUSE-MOI de ne pas avoir précisé en détail... Mon Dieu...

    Google et son intégration MVVM...ou ça ???
    Autant pour moi, je parlais de ça : http://knockoutjs.com/

    Mais il me semble bien que Google a fait un truc équivalent il y a peu..
    Ou alors c'était uniquement le Binding.

    Donc je modifie ce que j'ai dit, en javascript on peut utiliser les patterns MVVM et MVC mais aussi utiliser les Binding.

    Bref, faut vraiment arrêter la mauvaise foi ici... Tu as très bien compris ce que j'ai voulu dire.

    EDIT:
    D'ailleurs y a même des libs pour faire du LinQ en javascript
    http://jslinq.codeplex.com/
  • p3ga5e
    Membre confirmé
    C’est surtout l’explosion de JavaScript en tant que langage "serveur" grâce au succès, notament, de NodeJs qui utilise GitHub pour héberger ces modules complémentaires !

    A l’heure actuel 14760 modules sont hebergés sur GitHub ! impressionnant
  • stailer
    Membre chevronné
    Je trouve cette stat logique et pas étonnante du tout.

    Aujourd'hui faire du web sans Javascript c'est impossible, autant pas faire de web ou alors du (feu ?) Flash ou (feu) Silverlight.

    Jquery, Sencha, html5 etc... Tout utilise javascript aujourd'hui, dès qu'on fait une appli en Php, .Net ou java.

    D'ailleurs je comprends pas que certains disent que ce langage soit pourri...
    Sencha à prouvé avec l'intégration du MVC (ou Google et son intégration MVVM) que Javascript peut aller très loin.
    Pour ma part je ne cracherai donc pas dans la soupe...
  • Grimly_old
    Membre averti
    Envoyé par moriarti13
    Je réitère mes propos en connaissance de cause .
    Bien avant l'apparition de tous ces frameworks et autres, qui ne font qu'émuler des fonctionnalités serveur., Javascript a toujours été utilisé en tant que technologie cliente, c'est un fait et non un préjugé, ce langage a été crée pour cela, c'est sa nature en quelque sorte.

    Après si ça vous plait de d'en faire un langage serveur alors qu'il n'a ni la puissance, ni la sécurité pour le faire, libre à vous.
    Et moi je fais des applets avec Java !

    Un langage n'est JAMAIS limité à sa première utilisation. Java en serait mort d'ailleurs car le but premier de Java était les applets qui ont coulés face à Flash.

    Envoyé par crf 70
    Si un interpréteur de JavaScript venait à naitre, sans l'accompagnement HTML / CSS (c'est a dire sans le DOM, ou revisité pour manipuler les éléments crées en JavaScript), je pense que le langage serait tout de même utilisé par grand nombre de personne.

    Une syntaxe simple, un langage puissant (mais différent des autres, je l'accorde pour ceux qui préfèrent des langages de type C, PHP ... avec les classes ...)
    Il y a des interpréteurs ECMAScript (autre nom du Javascript) en java par exemple. (Rhino : http://en.wikipedia.org/wiki/Rhino_(...Script_engine) )
    Le javascript n'est pas simple mais juste sur différent par son concept de prototypage opposé aux objets.
  • AdmChiMay
    Membre éprouvé
    On pourra (heu, fera ?) continuer à parler des mérites et chausse-trappes des différents index, cette vision en 2D est plus parlante que la seule liste qui en est donnée habituellement (liste Tiobe ou RedMonk).

    En effet, on voit un peloton de tête qui reflète la tendance de ce qui est plus utilisé. Ensuite, il y a plusieurs groupes, s'étalant comme une queue de comète. Et ce que je vois, c'est que dans le 2è groupe, les langages fonctionnels (ou quasi) sont mieux représentés que ce qu'en disent généralement les listes ou les discussions. C'en est presque rassurant pour ceux qui les apprécient, et ceux qui hésitent à les choisir ou simplement les étudier.

    Petit gag : Common Lisp très en retrait de Racket. Mais Racket est plus récent et plus accessible aux nouveaux, tandis que le premier semble vivre dans des circuits indépendants des deux sources de mesure.

    Y a-t-il des statisticiens qui auraient des suggestion de représentation des résultats pour faciliter la lecture ?