Как выбрать язык программирования для нового проекта

kaa.python kaa.python
На данный момент я кажется окончательно вывел для себя правила по выбору языка для той или иной задачи. До этого многие годы писал на C++, C, Python, Java и Objective-C. Перепробовал кучу экзотических языков, таких как OCaml, Erlang, Scala, Lisp, Closure. Так как я не занимаюсь разработкой UI, Web-сайтов или мобильных приложений, все мои соображения актуальны исключительно для разработки системных приложений, сетевых приложений и бизнес логики. Кроме того, все что я пишу в этой заметке относится к командной разработке приложений в рамках относительно крупной компании, и будет не актуально для команд из 1-2 разработчиков или “домашних” проектов.

http://sysdev.me/how-to-select-programming-language/
velkin
velkin
03.04.2014 01:47
Здравствуйте, kaa.python, Вы писали:

KP>http://sysdev.me/how-to-select-programming-language/


KP>По количеству доступных открытых библиотек под нормальными лицензиями C++ однозначно проигрывает как Java, так и Python. Данный проигрыш отчасти сглаживается тем, что все что доступно в Python и Java можно достаточно просто интегрировать в C++, но тогда необходимость использования C++ вызовет еще больше вопросов.


А у меня прямо противоположное мнение. Смысл использовать Python, когда он использует обёрнутые библиотеки C++. Java тормознутая и тоже вся обёрточная, а что не обёрточное, того может не хватать в некоторых сферах деятельности.

>При этом C++ не является панацеей в написании высокопроизводительных приложений.


И да, С++ это панацея по сравнению с Java и Python. Единственное, что могу сказать, Java и Python всё же пригодны для создания профессиональных приложений, то есть ассоциации с этими языками, что они не просто игрушка и люди на них работающие могут стать серьёзными профессионалами, опять же в своих областях.

И ещё, память так люди потерять боятся, как будь-то они сишники, а на загрузку виртуальных машин ресурсов не жалко. Проекты в репозиториях линуксов на C++ говорят сами за себя, хотя, конечно, не буду утверждать, что все должны на него перейти.