В чем преимущества использования Rails gem вместо vendor / rails? - PullRequest
2 голосов
/ 25 июля 2009

Я недавно начал работать над небольшим личным проектом в Ruby on Rails и столкнулся с несколькими вещами, для которых я не смог найти однозначных ответов. Если кто-то здесь достаточно осведомлен, чтобы помочь, это будет с благодарностью. Все мои вопросы приведены ниже:

  • Какая польза от использования Rails Gem вместо того, чтобы использовать его в vendor / rails?
  • Есть ли какая-то польза от использования Rails 2.3.2? Некоторые плагины, которые я надеялся использовать, не совместимы с 2.3.2 (ActiveScaffold)? Он дает значительное улучшение по сравнению с 2.2?
  • В чем преимущество Ruby 1.9? Многие плагины еще не совместимы. Это предлагает большое улучшение по сравнению со старыми версиями?

Спасибо за любую помощь, которую вы, ребята, могли бы предложить.

Ответы [ 3 ]

3 голосов
/ 25 июля 2009
  1. vendor / rails, вероятно, сделает ваш проект более переносимым. Развертывания, в которых запускаются rake gem: install может показаться довольно шатким, особенно если вы обновляете «Framework Gem» (вы должны сделать это вручную).

    Недостатком вендора / rails является то, что он делает ваше развертываниенемного больше (больше файлов, которые нужно отправить), но если вы используете git и что-то вроде Capistrano, это только укусит вас при первоначальном развертывании ... но это не так уж и плохо.

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

  3. Производительность. Как вы указали, многие плагины не работают. Это что-то вроде проблемы курицы и яйца, но со временем это должно решиться само собой. Мы пока не запускаем 1.9 ни в одном из наших производственных приложений, потому что он слишком нестабилен с остальной частью стека.

1 голос
/ 26 июля 2009

Какая польза от использования Rails Gem вместо того, чтобы использовать его в вендоре / рельсах?

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

Имейте в виду, что команда gem позволит вам установить конкретную версию гема.

Есть ли какая-либо польза от использования Rails 2.3.2? Некоторые плагины, которые я надеялся использовать, не совместимы с 2.3.2 (ActiveScaffold)? Предлагает ли он значительное улучшение по сравнению с 2.2?

A лот изменился с рейлов 2.2 на 2.3.2, есть также куча исправлений безопасности, производительности и исправлений. ActiveScaffold совместим с рельсами 2.3.2, как и большинство плагинов. Если вы начинаете новый проект, я бы рекомендовал использовать самые последние и лучшие.

В чем преимущество Ruby 1.9? Многие плагины еще не совместимы. Он предлагает значительное улучшение по сравнению со старыми версиями?

Ruby 1.9 намного быстрее, чем Ruby 1.8.x, однако принятие 1.9 не так уж и высоко. Rails 2.3.2 прекрасно работает на Ruby 1.9, однако есть некоторые плагины и гемы, которые этого не делают. Обязательно прочитайте этот стековый поток вопрос по теме.

1 голос
/ 25 июля 2009

Я отвечу на вопрос о самоцветах.

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

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

Действительно хорошим вариантом является использование инструмента управления драгоценными камнями, такого как geminstaller, он позволяет вам настраивать драгоценные камни и определенные версии драгоценных камней, с которыми работает ваш проект, чтобы у вас был согласованный набор драгоценных камней в вашем развертывании.

...