Existe-t-il des preuves que l'utilisation de langages dynamiques a un impact sur la productivité?

25

Je me demande s'il y a des expériences qui montrent l'existence ou la non-existence d'une corrélation entre l'utilisation d'un langage dynamique (comme Python, Ruby ou même des langages qui s'exécutent sur la plate-forme Java comme Groovy, Clojure) sur un langage statique (comme C / C ++), et la différence de productivité.

Ken Li
la source
3
Une comparaison empirique de C, C ++, Java, Perl, Python, Rexx et Tcl pour un programme de recherche / traitement de chaînes est un bon article classique couvrant de nombreux aspects liés au logiciel (y compris la productivité) de manière pratique.
accro
6
Comment Java est-il dynamique?
svick
5
J'ai du mal à percevoir cette question comme ontopique, mais comme elle demande spécifiquement des expériences, ça devrait aller. Veuillez garder les réponses rigoureuses en conséquence.
Raphael
1
J'ai déjà posé cette question exacte sur les programmeurs: programmers.stackexchange.com/questions/10032/… , j'espère que vous obtiendrez de meilleures réponses que moi.
Winston Ewert
3
C'est le genre de question sur laquelle les chercheurs devraient réellement travailler. Je considère que c'est sur le sujet.
Dave Clarke

Réponses:

11

Bien que je ne sois pas au courant des recherches sur la productivité, il y a eu des recherches sur la compréhension. Philip Wadler a collecté des liens vers des articles sur ce sujet: voir cet article et celui-ci .

Suresh
la source
3
En un coup d'œil, tous semblent être fonctionnels vs impératifs, pas statiques vs dynamiques.
sepp2k
En plus du commentaire de seepp2k, l'utilisation de ces études par Wadler représente exactement les dangers de la science empirique: des généralisations erronées!
Uday Reddy
8

En particulier sur la productivité, Hanenberg a étudié l'impact sur le temps de développement lorsque la même tâche a été implémentée en Java (statique) vs Groovy (dynamique). Leurs résultats ont été décrits dans l'article suivant:

Systèmes de types statiques vs dynamiques: une étude empirique sur la relation entre les modèles de types et le temps de développement , 2011.

Il y a également eu des recherches sur l'impact du typage statique / dynamique sur la maintenabilité du logiciel. Il s'agit d'un article très récent sur le sujet:

Une étude empirique sur l'impact du typage statique sur la maintenabilité des logiciels , 2014

Les auteurs ont également publié des travaux antérieurs sur le même domaine, y compris celui-ci (également répertorié dans l'un des liens mentionnés par Suresh):

Les systèmes de type statique améliorent-ils la maintenabilité des systèmes logiciels? An Empirical Study , 2012 (PDF disponible)

De plus, si vous avez l'intention de poursuivre ce sujet de recherche, gardez à l'esprit que l'un des problèmes clés ici est la définition de la productivité - et comment allez-vous exactement la mesurer.

rla4
la source