Здравствуйте, LeonidV, Вы писали:
ST>>1. Модульность: у явы решается через OSGI, в питоне/руби (насколько я понял) — почти никак (т.е. каталоги/файлы — руками, как отслеживать зависимости при сотнях модулей?)
LV>Смотря что под модулями понимать. Если просто зависимости, тут скорее maven в Java.
Не только зависимости: по-моему кроме как через OSGI нет способа обновить приложение (или часть) без перезапуска сервиса.
ST>>2. Поддержка: по моему субъективному мнению поддержка проектов на яве должна быть немного полегче... ошибаюсь?
LV>Поддежка на Java однозначно будет проще. Это одно из преимуществ весьма ограниченного языка — чем более язык содержит в себе синтаксического сахара, тем проще на нем разрабатывать и сложнее поддерживать код. В случе Ruby, например, лучше сразу запретить использование конструкций типа unless и ряда других.
Ruby уже выбыл из списка
ST>>3. Сервера приложений: о времени запуска jBoss уже чуть ли не легенды ходят; Pylons, Django и Zope вроде этим не страдают?
LV>Я не очень знаком с Python'ом, но мне всегда казалось что Django это web-фреймворк. Сравнивать его с JBoss (сервер приложений) не корректно. По поводу долгого старта — это важно при разработке, есть JRebel. А в production — ну загрузиться от в течение пары минут. Ну и что.
Согласен, сравнение не корректное. Лучше так: java сервера требуют больше ресурсов, их сложнее заставить работать "on demand", т.е. сервер долго запускается и быстро работает, загружая систему даже при минимальном количестве обращений. В случае с python по-моему можно держать загруженными только работающие компоненты.
ST>>4. Наличие готовых решений, компонентов и пр. в яве гораздо больше (кстати богатство выбора порождает его сложность
); поддержка явы такими гигантами как Oracle, IBM...
LV>Да. Коммерческую поддержку можно взять практически для любого mainstream решения.
Вот и вопрос: что "мейнстримнее" — java или python?