roman901
@roman901
Software Developer

Какой фреймворк выбрать: Play! (java) или Flask (python)?

Мучаюсь с выбором.
Что выбрать для веб-разработки? Собрался делать весьма специфичные вещи с низкой нагрузкой, требуется например вместе с приёмом соединений сайта держать сокет-сервер для чего-то еще, и так далее. Тоесть гибкость. Склоняюсь к Play!

Но с другой стороны - большинство вещей делаются быстрее и проще в python, хотя из-за этой гибкость и скорости куча подводных камней. (Типа рекурсивных импортов)

Так что же выбрать для небольших, но специфичных проектов?
  • Вопрос задан
  • 3077 просмотров
Пригласить эксперта
Ответы на вопрос 3
@Quickerz
Flask вполне подойдёт для ваших целей. Сразу скажу, что не имел дело с веб разработкой под Java, но мне кажется, что порог входа значительно выше, чем в питоне. Вам нужен ровно один файл и десяток строк, чтобы запустить своё первое приложение на Flask. Сомневаюсь, что с Play! можно сделать подобное. Но тут стоит выслушать людей, которые работают с ним. Я лучше опишу преимущества веб разработки на питоне.

Во-первых это сам питон. Язык прост, лаконичен, имеет множество библиотек, которые покрывают большую часть потребностей для веб разработки. Насчёт рекурсивных импортов я бы не беспокоился. За исключением очень уже редких случаев такие проблемы легко решаются переносом импорта в нужное место в файле либо правильным разнесением функционала по модулям.

Во-вторых Flask не имеет каких-либо требований к организации проекта, что даёт желаемую гибкость, хотя и требует дополнительного планирования архитектуры. Хотя я не уверен, что это минус для специфичного проекта, который в любом случае предполагает некоторое предварительное планирование. Вы можете сделать весь проект в одном файле (старайтесь этого избегать), можете использовать встроенный механизм блюпринтов, можете использовать стороннее решение для организации кода на основе классов либо сделать своё. Гибкость и прозрачность питона здесь отлично себя проявляет.

Ну и напоследок, если вы работаете над реально СПЕЦИФИЧНОЙ задачей, есть смысл поискать решения именно под эту задачу на языке-кандидате. Может оказаться так, что более удобный для общих задач фреймворк окажется менее пригодным для решения именно вашей задачи.
Ответ написан
@bromzh
Drugs-driven development
Когда твой проект на play в очередной раз будет компилироваться по полчаса, ты пожалеешь, что выбрал play.
Ответ написан
Комментировать
@asd111
Play! это больше scala чем Java. Для низкой нагрузки можно спокойно брать Python.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы