преимущества игрового фреймворка для людей, пришедших с php / ruby ​​/ python

Одним из самых сильных аргументов в пользу игрового фреймворка является его цикл разработки, просто исправьте код, вернитесь к просмотру, нажмите перезагрузку и начните, и все это без записи, компиляции, развертывания и хлопот, типичных для веб-разработки j2ee.

Тем не менее, для веб-разработчиков, пришедших с php, ruby ​​или python, это не удивительно, более того, это считается естественным способом разработки веб-приложений.

Более того, многие из преимуществ игры (эффективная система шаблонов, быстрое устранение ошибок, отсутствие состояния, увлекательность и продуктивность) в этих фреймворках воспринимаются как должное ...

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


person opensas    schedule 16.09.2011    source источник


Ответы (3)


С моей точки зрения это основные преимущества

  • это java, поэтому, если вы не чувствуете себя комфортно с java, и вы не желаете ее изучать, это может не быть преимуществом. С другой стороны, если вам НЕОБХОДИМО использовать java, исходящий из php или rails, вы будете чувствовать себя как дома с игрой.

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

  • поддержка инструментов: поддержка IDE (eclipse, intellij, netbeans)

  • бесконечная коллекция библиотек, чтобы делать все, что вы хотите, ну это просто java

  • работает на jvm, имеющей многолетний опыт и оптимизацию

  • он скомпилирован, поэтому вы можете ожидать лучшей производительности

  • это действительно полный набор: он поставляется со всем, что вам нужно для разработки веб-приложения, компилятора, веб-сервера, сервера базы данных в памяти, автономной документации, интегрированного менеджера баз данных, управления локальным и распределенным кешем, приспособлений, эволюции, управления зависимостями, множества служебных библиотек , юнит-тесты, селен-тесты, поддержка ide. Вам не нужна установка apache или mysql, чтобы начать работу

  • он имеет расширенные функции, такие как асинхронные запросы, веб-сокеты, асинхронные задания

  • нулевая настройка среды разработки: просто разархивируйте play.zip, запустите новое мое приложение, запустите мое приложение

  • отличная документация

  • большое и быстрорастущее сообщество

  • scala твердо на горизонте, если вы пришли с динамического языка, вам может быть удобнее работать с таким языком, как scala, даже если он статичен

  • может быть развернут в любом контейнере сервлетов, таком как tomcat, но также поставляется с собственным легким сервером

  • в нем постоянно растет коллекция модулей, предоставленных сообществом

  • он совместим с облаком, работает с gae, heroku, playapps, cloudbee, dotcloud и т. д. (см. этот вопрос)

  • исходный код: это одно из основных преимуществ, хотя им часто пренебрегают. Исходный код довольно читабелен, понятен и не перегружен. Даже без особых знаний java можно взглянуть на код, понять его и начать вносить свой вклад в проект.

В моем конкретном случае, исходя из фона php и классического asp, игра позволила мне запустить и запустить веб-приложение, одновременно изучая java. это действительно позволило мне насладиться переходом с динамических языков на java ...

Play имеет некоторые преимущества по сравнению с другими динамическими веб-фреймворками, но я думаю, что если вы хорошо разбираетесь в codeignter, rails, django и т. Д., И если вы не желаете получать выгоду от экосистемы java (или scala), вам следует придерживаться того, что вы знать...

person opensas    schedule 17.09.2011
comment
а как насчет недостатков? Похоже, он вообще не компонентно-ориентированный. - person Dima; 22.09.2011
comment
вы правы, play - это фреймворк на основе запросов, а не компонентный. Я не знаю, является ли это преимуществом или недостатком, это зависит от ваших предпочтений (хотя я немного предвзято отношусь к игре). Взгляните на этот вопрос stackoverflow.com/questions/1247627/ - person opensas; 22.09.2011

Аналогичные дебаты ведутся недавно в группах Google, но более конкретно сравниваются Play и Ruby (on Rails). Я попытался сопоставить некоторые отзывы, предоставленные сообществом по этой теме, вместо того, чтобы просто высказать свое мнение. Надеюсь, это даст более полный ответ!

  1. статически типизирует уровень бизнес-логики (а при использовании нового механизма шаблонов даже ваши представления будут статически типизированы). Таким образом, это также имеет преимущество лучшей поддержки IDE.
  2. Может использовать как Java, так и Scala, поэтому вы не ограничены одним технологическим стеком.
  3. Игра работает "из коробки", но ее можно легко настраивать, поэтому она не заставляет вас работать с каким-то определенным методом.
  4. В памяти БД. Отлично подходит для новых разработчиков, которые просто хотят начать работу. Не нужно настраивать сервер WAMP / LAMP и т. Д., Просто для начала. Просто скачайте игру, и все готово!
  5. Это Java (или Scala)! Я подсел на Play, потому что неохотно использовал PHP, потому что это был самый простой способ разместить личный веб-сайт, но мне не нравилось, что я создавал программное обеспечение таким образом, который, как мне казалось, не был хорошо структурирован. Игра позволила мне использовать Java без основной части приложения J2EE.
person Codemwnci    schedule 16.09.2011
comment
да, я только что видел этот вопрос ... также я обсуждал это с другом, пришедшим из мира php - person opensas; 17.09.2011

Игровой фреймворк. Игра во многом вдохновлена ​​Ruby on Rails и Django. Разработчик, знакомый с любым из этих фреймворков, будет чувствовать себя как дома.

1) Play использует возможности Java для создания веб-приложений. Снимая ограничения Java EE, Play предоставляет разработчикам простой в разработке и элегантный стек, нацеленный на повышение производительности.

2) Он ориентирован на продуктивность разработчиков и ориентирован на архитектуры RESTful. Play - идеальный помощник для гибкой разработки программного обеспечения.

3) Структура папок игры в основном совпадает с Rails.

4) Play загружает код динамически. Просто исправьте ошибку в файле Java и нажмите «перезагрузить», изменение мгновенно отразится на веб-странице. Нет необходимости выполнять вялую перестройку / развертывание / перезапуск сервера.

5) Нет конфигурации: Конфигурация не требуется, просто загрузите, распакуйте и начните разработку.

6) Обнаружение ошибок очень просто. При возникновении ошибки воспроизведение показывает сообщение об ошибке, путь к файлу, номер строки и соответствующий фрагмент кода прямо в браузере.

person Shrinivas    schedule 07.11.2016