Сегодня варианты для более легкого пути перехода к Play 2

Я новичок в Scala и в Play, и я планирую использовать их для нового проекта. Я вижу, что разработка Play 2 идет хорошо, хотя стабильная версия все равно 1.x. И между ними существуют существенные различия.

Что мне интересно, если я сейчас начну проект Play 1.x, какие варианты я могу предпринять, это облегчит переход на Play 2 в будущем?

А именно:

  • Play 2 использует Ebean как ORM по умолчанию, вы бы посоветовали мне использовать его вместо Play 1.x ORM (Hibernate)?
  • Что касается системы шаблонов; что я могу сделать теперь, чтобы облегчить переход позже?
  • Что еще мне нужно будет беспокоиться, когда я решит перенести мое приложение в Play 2 в будущем?

Ответ 1

В самой миграции:

  • Планируется перенести шаблоны Groovy в Play 2 (я считаю, что это незавершенное производство). Вы можете смягчить это, вы начинаете использовать Play 1.x с помощью Scala, так как система шаблонов будет Scala.
  • Переход с Hibernate на Ebean должен быть легким, если вы не используете расширения для Hibernate.
  • Конфигурация и некоторые задания (например, @OnApplicationStart) могут измениться, но это должно быть довольно просто для переноса (просто переместите их).
  • Будет изменен способ доступа к маршрутам и активам, что может дать вам дополнительную работу по адаптации кода/шаблонов.

В целом это не должно быть слишком сложным, но, как сказал @lacy, это зависит от ваших крайних сроков и самого проекта. Если это критический проект, который должен быть закончен до следующего марта 2012 года, я бы пошел с Play 1.x. Если это менее важный проект, который может быть отложен, и что в любом случае он не будет выпущен до марта 2012 года, попробуйте Play 2.0.

Ответ 2

Я бы даже не стал использовать Play2 для проекта на данный момент. У него все еще не хватает некоторых функций, и даже если развитие будет продолжаться, я буду придерживаться Play 1.2.x. Даже если я должен признать, что заманчиво попробовать 2.0.

Но я бы никогда не выбрал промежуточное решение. Начиная с версии 1.2.x и попытавшись перейти на 2.0.0. Он называется Семантическая версия. Когда основное число увеличивается, нет обратной совместимости. Значит, вы либо используете play 1.2.x, либо Play 2.0. Попытка мигрировать вызовет у вас больше стресса, проблемы, которые вы хотите.

Ответ 3

Это "все о ваших крайних сроках проекта". Play2 скоро появится, а некоторые компоненты уже кажутся довольно стабильными. Поэтому, если позволит время, я бы рекомендовал вам использовать Play2. Недавно он изменил статус на бета-версию. Несколько дней назад Гийом создал полезную wiki в Github. Вы также можете обратить внимание на примеры в источниках Play2. И, как я понимаю, не будет никаких правил миграции от Play1X до Play2.