Проблемы при написании средней / большой системы - PullRequest
1 голос
/ 03 ноября 2010

Существует некоторая ажиотаж с такими языками, как Python (который мне очень нравится) и Ruby, но я писал систему среднего размера на Python и чувствую отсутствие некоторых инструментов, которые были бы у меня, если бы я использовал Java: функции EclipseИнтеграция JUnit и некоторые языковые функции, такие как обнаружение некоторых ошибок во время компиляции.

Некоторые люди говорят, что Java мертва как язык.Но большое важное программное обеспечение написано на Java: Hadoop, Lucene и многие другие.

Является ли Java лучшим языком, чем Python или Ruby, для средне / крупных инфраструктурных программ, подобных этим?

Ответы [ 3 ]

1 голос
/ 03 ноября 2010

Этот вопрос может стать очень спорным ... Для корпоративного программного обеспечения в большинстве случаев ключевым фактором является политический, а не технический.

Если вы владеете бизнесом, придерживайтесь технологии, которая наилучшим образом соответствует вашему видению.,Если нет, используйте Java - это политически более безопасно.

В технической области это почти ничья.

1 голос
/ 03 ноября 2010

Вы правильно утверждаете, что Java больше подходит для корпоративного программного обеспечения.Это действительно то, где сияет Java: он очень хорошо работает для корпоративного программирования.

Однако ваши замечания по поводу инструментов в Python и Ruby являются необоснованными.PyDev для Eclipse в полной мере использует те же функции, что и вам, если бы вы разрабатывали на Java.В Ruby есть похожий плагин для Eclipse.Фреймворки модульного тестирования, такие как pyunit, nose и другие, существуют для обоих языков (и я считаю, что PyDev поддерживает модульные тесты).Кроме того, точно так же, как компилятор Java обнаружит ошибку во время компиляции, скрипт Python выдаст синтаксические ошибки перед его запуском вместе с (IMO) гораздо более понятной системой ошибок, чем компилятор Java.

Так какPython и Ruby являются языками сценариев, их область знаний больше связана с небольшими задачами, быстрой разработкой и использованием таких сред, как Django или Rails.Так что да, более мощные языки, такие как Java, отлично подходят для предприятий, но есть что сказать за элегантность и простоту использования Python и Ruby.

0 голосов
/ 03 ноября 2010

Все, действительно, много мукнеса.В Python / Ruby есть функции, которые, как вы знаете, делают их более привлекательным предложением, чем, скажем, Java.Статическая типизация может быть вашим лучшим другом большую часть времени, и боль для другого.

Отсутствие инструментов связано с усыновлением.Java / c # имеет более широкое распространение.

Корпоративным организациям / предприятиям и средним и крупным организациям нравится закупать решения с контрактами, а не техническими преимуществами.

Из опыта Python есть некоторые проблемы со скоростью,Я не могу комментировать Ruby, но я представляю, что если вашим приложениям требуется выделенная скорость, я бы не использовал python.

Кроме того, многопоточность и многоядерная обработка не так хороши, как в python, хотя 2.7Похоже, что многие старые проблемы исправляются, я думаю, что проблема GIL все еще остается для многопоточности.

Мой единственный комментарий к Java - это то, что за ним стоит Oracle, и в зависимости от того, где вы сидите и как вам нравится Oracle, может изменить ваше отношение к Java.особенно если вы разрабатываете решения с открытым исходным кодом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...