Выберите, который знаком Вам и выполненный с ним.
Или можно выбрать Django на Jython для получения лучшими из библиотек Java и кодирования скорости Python.
Или Java выбора, если необходимо убедить кого-то, что это - предприятие-y.
я сказал бы, работаете ли Вы одни / в малочисленной команде, затем просто выберите тот, который требует наименьшего количества ресурсов (подсказка: Python).
Фон: я - профессиональный Java-разработчик, который делает Django на стороне.
Java
Java используется главным образом на предприятии, и существуют очень серьезные основания для него. Java является хорошим решением при необходимости в языке, который является сформировавшимся, имеет хорошую поддержку параллелизма, транзакций, доступа к нескольким базам данных... Java является также очень стабильной платформой. И конюшней, я не подразумеваю, что она имеет меньше ошибок, чем Python или Ruby, я подразумеваю, что она не изменяется так же.
существует замечательная поддержка инструмента Java. Большой IDE, большие инструменты рефакторинга, большие инструменты статического анализа... Вы, вероятно, привычка находите как много инструментов того качества для любого другого языка.
существует много медленных JAVA-приложений, но по-моему это прибывает больше от разработчиков, использующих архитектуру, которую они не понимают, пытаясь сделать вещи, более сложные, чем они должны. Можно разработать высокопроизводительные, очень быстрые веб-сайты с Java.
Django
Django является большим количеством легкого веса, больше забавы работать с. У Вас может быть приложение, работающее в очень короткое время. Администраторский интерфейс является волшебным для простой операции CRUD и может использоваться даже для довольно сложной логики. Можно найти много из "reuseable приложения", которые будут реализовывать некоторые технические возможности, в которых Вы нуждаетесь.
, Даже если Django находится теперь в версии 1.0, это совсем не стабильно. Если необходимо все еще разрабатывать проект через 1-2 года, можно ожидать много изменений только для следования за состоянием Django.
Java Использования Заключения
, если Вы уже знаете это и если у Вас есть потребности в сложной архитектуре и долговременной поддержке.
Использование Django (или RoR), если Вы хотите быструю разработку и не заботитесь, необходимо ли переписать много приложения через 1-2 года.
Анти-Java:
анти-Python:
Anti-RoR:
Лично я закончил с Python, но все эти опции - а также.NET - являются легко защитимыми.
Если это будет в производстве, используйте технологию, что Вы знаете лучше всего в настоящее время. Изучая новую платформу, язык или технология могут вызвать задержки, и в начале Ваше качество кода будет ниже.
Является Ваше приложение главным образом презентацией, база данных (обслуживание типа CRUD), или большая логика бэкенда?
Для главным образом презентации я пошел бы Python/Django (или даже php).
Для простого CRUD RoR облизали его.
Для чего-либо с тяжелой логикой бэкенда, или, который использует существующую унаследованную базу данных, я пошел бы для сервлетов Java с помощью Spring с Freemarker, Ibatis и Tomcat или Причалом.
P.S. не волнуются о производительности масштабируемости - ничто не масштабируется, а также решение для Tomcat/Java.
Я рекомендовал бы Java и платформу Spring - это решает всю нагрузку типичного веб-приложения Java и предоставляет Вам ясный способ получить то, что Вы хотите.
я лично использую, в спящем режиме - JPA - платформа Spring (или веб-Поток Spring) - стек Tiles - Freemarker, который дает мне способность создать новые веб-приложения довольно быстро, но в целом они налагают довольно крутую кривую обучения.
я предложил бы - просто дают Spring попытку запуска.
Я раньше был Java-разработчиком, делая главным образом C# теперь. Мои аргументы против Java - то, что это (или по крайней мере были ), реальная боль для подъема набора и выполнения. Это также лучше подходит для крупных приложений, для которых нужно много организации и пригодности для обслуживания. Это, однако, прибывает в стоимость.
От звуков Вашего сообщения, я думаю, что один из динамических языков лучше подошел бы. Плюс, они представляют больший интерес для проигрывания с (по моему скромному мнению).
Если вы не находитесь в магазине Java / .net или нет конкретной причины, по которой вы бы использовали Java / .net, я бы предложил одну из платформ, которая более оптимизирована для веб-разработки: Python / Django (или Ruby / Rails, PHP / CodeIgniter / Cake).
Вы обнаружите, что Python / Ruby / PHP намного проще в изучении, развертывании, программировании и т. Д. О них есть много литературы и множество ресурсы поддержки. Все они были использованы для создания основных веб-сайтов (YouTube на Python, Twitter на Ruby, Facebook на PHP).