Изучение Rails 3 после изучения Rails 4

Я новичок в Rails, построив с ним только два сайта. До сих пор я использовал только Rails 4.0. Теперь я хочу начать использовать LocomotiveCMS, но он пока не поддерживает Rails 4. Поскольку я начинаю новый проект, мне не нужно беспокоиться о понижении существующего кода до совместимости с Rails 3, но, очевидно, если я начну использовать Rails 3, как если бы это был Rails 4, я столкнусь с некоторыми проблемами.

  1. Какие изменения мне нужно знать при переходе на Rails 3, чтобы код, который я пишу, не ломался из-за специфики Rails 4? Я прочитал Примечания к выпуску 4.0, но не зная, на чем основаны изменения, я не могу быть уверен, чего ожидать, если идти в обратном направлении. Например, защита массовых назначений в Rails 3 устарела. Это дает понять, что я использую специфичную для Rails 4 реализацию для защиты массовых назначений, и поэтому я должен прекратить использовать это, но это не указывает на то, какой была исходная система в Rails 3, поэтому я не могу сказать, что Мне нужно изменить на.
  2. Сколько из этих изменений повлияет на то, что я смогу доставить клиенту, вместо того, чтобы просто обеспечить лучшую производительность или более чистый код? Например, отсутствие Turbolinks делает загрузку страниц менее быстрой для клиента, но ни они, ни я, вероятно, не заметят отсутствие кэширования русской куклы.
  3. Есть ли что-нибудь, что по какой-то причине сделало бы переход к Rails 3 просто неразумным? Например, проблемы безопасности или то, что просто невозможно сделать в Rails 3, что можно сделать в Rails 4?

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

1 ответ

Решение

Rails 4, как правило, лучше и чище, чем 3.2, но 3.2 лучше и чище, чем 3.0. Движение назад должно быть хорошо, просто будьте готовы столкнуться с неровными краями.

  • Прочитайте руководство по обновлению. Обратите особое внимание на вещи, которые были удалены или заменены.
  • Если в 4 есть какая-то особенность, которая вам крайне необходима, вероятно, есть гем, который перенесет ее на 3.2 (например, turbolinks работает с Rails 3.2)
  • Обратите внимание на политику обслуживания Rails. 3.2 все еще получает исправления безопасности, но более старые версии не получают.
Другие вопросы по тегам