Playframework и Django - PullRequest
       56

Playframework и Django

30 голосов
/ 10 ноября 2009

Я работал с Django раньше и недавно видел Play Framework .

Это ответ сообщества Java на Джанго? Есть опыт? Любые сравнения производительности с другими веб-фреймворками Java?

Редактировать: почти похож на *1011*, ответы, к сожалению, мало что говорят о структуре.

Ответы [ 6 ]

36 голосов
/ 13 ноября 2009

Играть! глоток свежего воздуха в Java и обходит все корпоративные проблемы, которые развивались в течение многих лет. Даже пространство имен - это просто play, а не com.playframework. Предполагается, что это ответ на Rails, Django и т. Д. И основан на MVC. Необходимо, чтобы Java оставалась актуальной во всех, кроме глубоко укоренившихся корпоративных магазинах.

Играть! уменьшает чрезмерную абстракцию и мучительную конфигурацию старой Java. Это полный стек, на который он не опирается или не использует старую методологию Servlet / EJB, как пытался сделать Restlet (облегчая REST в Servlets) Играть! является отличным Java-фреймворком на основе REST, который является действительным конкурентом для других платформ MVC-фреймворков.

Это очень RESTful и легко привязать параметр к методу java. Они также упростили использование JPA в пространстве имен воспроизведения.

play.db.jpa.Model

public void messages(int page) {
    User connectedUser = User.find("byEmail", connected());
    List<Message> messages = Message.find(
        "user = ? and read = false order by date desc",
        connectedUser
    ).from(page * 10).fetch(10);
    render(connectedUser, messages);
}

Python используется для сценариев вместо сборок с Maven, что может спасти несколько жизней.

Я не был так взволнован Java-фреймворками со времен Red5 или Restlet. Бонусом является то, что у них есть простые способы запустить ваше приложение в Google AppEngine, а также с помощью Java-версии GAE.

8 голосов
/ 18 апреля 2011

Я использую Play! сейчас уже несколько месяцев и на самом деле полюбили рамки. Я немного боролся с Rails и Django, в основном потому, что я на самом деле не фанат динамически типизированных языков; однако, никогда не было действительно хорошей среды веб-разработки для Java, чтобы конкурировать с ними. С точки зрения производительности, Rails и Django были лидерами в гонке вооружений MVC, которая продолжалась. Играть! это круто, это сжато, масштабируемо, мощно, и у него есть большое сообщество, которое постоянно растет. Если вы все еще действительно хотите использовать такой язык, как Python или Ruby, вы можете использовать Play! со Скалой тоже. Я действительно пытаюсь попасть в Scala прямо сейчас, потому что я думаю, что у него большое будущее, и его очень весело использовать. В любом случае, я бы порекомендовал попробовать!

6 голосов
/ 10 ноября 2009

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

Я перешел с Java -> Django из-за быстрого цикла «изменить файл» / «перезагрузить браузер» и Play! Фреймворк заставляет меня вернуться к моему любимому языку Java.

В некоторых терминах это также можно сравнить с тем, что пытаются импортировать Grails и вообще динамические языки в Java (Groovy используется в Play!): Простота, скорость и надежность.

5 голосов
/ 10 января 2010

Я также пользователь Django. Я только что посетил фреймворк Play и просмотрел его документацию. У этого есть упрощенный дизайн, о котором Джанго был известен. Он даже имеет встроенную поддержку движка приложения. Я уверен, что многие Java-разработчики поддержат его, и нужно только некоторое время, чтобы увидеть классные плагины сообщества.

0 голосов
/ 04 июля 2015

Я родом из очень сильного Java-фона. Так что мой ответ здесь может быть немного предвзятым.

Игра, наконец, приносит сообществу java то, чем django был все эти годы в сообществе python, но только лучше. Play построен на jvm, поэтому наследует все положительные качества от надежной платформы, которая на протяжении многих лет доказывает, что она является наиболее надежной и масштабируемой, позволяющей писать и запускать приложения в масштабе.

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

Странно, я не нашел его таким простым в использовании, как я ожидал. Так много конфигураций. Слишком часто библиотеки делают одно и то же и часто не очень хорошо играют друг с другом. Слишком много магии. Кроме того, отсутствие безопасности типа делает очень сложным управление и обслуживание веб-приложение в большом масштабе. Не поймите меня неправильно, я уверен, что людям это удалось, но по моему опыту я все же считаю java / scala лучше всего подходящим для этого, особенно когда вы делитесь базой кода со многими другими разработчиками.

Поддержка IDE для Java - непобедима. Если вы внедрите TDD, вы обнаружите, что реорганизуете код и ежедневно перемещаете вещи. И Java IDE дают вам всю эту силу. С типом безопасности и многое другое.

Мой вывод: если вы пишете простое CRUD-приложение / прототип / игрушку, даже не задумываясь о расширенных функциях и большом масштабе, вы, вероятно, сможете найти некоторые преимущества в использовании python / django. В противном случае вся экосистема Java выигрывает. И игра это вишня на вершине.

0 голосов
/ 18 июня 2012

Недавно мы начали использовать Play для создания веб-сервиса для различных мобильных приложений. Я пришел из среды Java. Я могу сказать вам, что кривая обучения не так уж крута - буквально через час у меня уже был веб-сервис, работающий с базовым API. Через неделю мы были на веб-сервисах Amazon. Я определенно вижу будущее для Play, поскольку оно упрощает веб-разработку для Java-разработчиков.

Однако пара вещей, которые я заметил (версионирование ресурсов и т. Д.), Все еще не встроена в платформу, но я уверен, что они будут там вовремя. Я бы сказал, что использование Play определенно стоит того.

...