Мне интересно, есть ли какие-либо эксперименты, которые показывают существование или отсутствие корреляции между использованием динамического языка (такого как Python, Ruby, или даже языков, которые работают на платформе Java, таких как Groovy, Clojure) над статический язык (например, C / C ++) и разница в производительности.
25
Ответы:
Хотя я не в курсе исследований по производительности, были исследования по пониманию. Филип Уодлер собирает ссылки на статьи по этой теме: посмотрите этот пост и этот .
источник
Что касается производительности, Ханенберг исследовал влияние времени разработки, когда та же задача была реализована в Java (статическая версия) и Groovy (динамическая). Их результаты были описаны в следующей статье:
Статические и динамические системы типов: эмпирическое исследование о связи между приведением типов и временем разработки , 2011.
Также было проведено исследование влияния статической / динамической типизации на удобство сопровождения программного обеспечения. Это очень недавняя статья на эту тему:
Эмпирическое исследование влияния статической типизации на ремонтопригодность программного обеспечения , 2014 г.
Авторы также опубликовали предыдущую работу в той же области, включая эту (также указанную в одной из ссылок, упомянутых Сурешем):
Системы статического типа улучшают ремонтопригодность программных систем? Эмпирическое исследование , 2012 (PDF доступно)
Кроме того, если вы намерены продолжить эту тему исследования, имейте в виду, что одной из ключевых проблем здесь является определение производительности - и как именно вы собираетесь ее измерять.
источник