Нужно ли мне знать Ruby, чтобы узнать Ruby on Rails?
Я прочитал еще несколько вопросов о материале, чтобы изучить RoR. Но мой вопрос: могу ли я начать изучение RoR без Ruby?
Ясно, что наоборот, лучше, но я бы предпочел попробовать этот путь, если это имеет смысл (каким-то образом). Или изучите оба параллельно...
Ответы
Ответ 1
Ну, учитывая, что Ruby on Rails - это просто Ruby, написанный определенным образом (read: framework) да, вам нужно будет изучить Ruby.
Вам нужно будет изучить эти вещи о Ruby (среди прочего):
- Все есть объект. Все. Да, даже
2
и "foo"
- Наследование класса и что он делает (tm)
- Как определить разницу между методами класса и экземпляра
- Модули и способы их правильного использования (
class_eval
- ваш друг)
- Люди пишут драгоценные камни. Используй их. Повторное изобретательство колеса прекрасное и денди для обучения, но повторное изобретение, потому что вы считаете, что ваш метод лучше не.
И все это о Rails:
- Не бороться с условностями.
- Удерживайте не.
- Код модели входит в модель.
- Код контроллера поступает в контроллер.
- Просмотр кода идет в представлении.
- Код помощника идет в помощнике.
- Спросите себя: "У Rails есть помощник для этого?". Если ответ "Нет", спросите кого-нибудь другого. Ответ скорее всего будет "Да".
И эти вещи вообще об обучении:
- Google.
- Google снова.
- Если ответ, который вы ищете, находится не в пределах расстояния в Google, сформулируйте его таким образом, чтобы он был добр к тем, кто может знать ответ (например, вы сделали с этим вопросом!)
- Обращение к людям с большими мотивами. Как помочь вам, помочь им?
- Постарайтесь не слишком много помочь вампиру.
- Если вы запрашиваете в IRC-канале, используйте службу pastebin, например http://pastebin.com, http://pastie.org или http://gist.github.com
- Второе правило о запросе в IRC: не спрашивайте "никаких идей"? после вашего вопроса. Ваш вопрос должен уже просить об этом сам.
И наконец: Люблю то, что вы делаете.
Ответ 2
Люди говорили, что вы могли бы изучить RoR, не зная Ruby (включая DHH, если я не ошибаюсь).
Но, на мой взгляд, если вы также знаете Ruby, вы можете сделать намного больше, чем не зная об этом. И знание будет очень полезно при отладке или устранении неполадок ваших программ.
Итак, мое предложение изучается параллельно.
Ответ 3
Очевидно, что...... если вы действительно хотите разработать хорошие веб-приложения...
Но также будет интересно сначала намочить руки некоторыми примерами образцов RoR, используя встроенные функции, которые RoR предоставляет... и затем изучать детали (которые потребуют знания Ruby)
Если вы избегаете изучения Ruby (что делают многие разработчики RoR)... тогда вы окажетесь на месте и пройдете чужой код. И в конце концов вы можете оставить RoR из разочарования. Я видел много таких случаев.
Ответ 4
Вы можете. RoR в некотором роде является языком, специфичным для домена, поскольку для вас определено много, а совместное простое приложение может быть похоже на простой рецепт. Разумеется, было бы лучше правильно изучить язык, но многие люди этого не делают.
Ruby For Rails book пытается научить вас обоих в одно и то же время, поэтому вы можете захотеть изучить его. Я его не читал, но я слышал, что это очень хорошо.
Ответ 5
Вопрос, который вы задаете, немного неоднозначен. В частности, вы можете спросить: "Могу ли я узнать Rails, не зная сначала Ruby?" Или "Могу ли я узнать Rails, не изучая Ruby?".
Ответ на более поздний вопрос, вероятно, нет, если вы хотите быть особенно функциональным с ним. Не зная Ruby, было бы трудно воспользоваться большей частью мощности Rails.
Ответ на первый вопрос, безусловно, да. Хотя зная, что Ruby сначала сделает обучающие Rails быстрее/проще, вы можете легко изучить оба одновременно. На самом деле, как я узнал Ruby/Rails, взяв сайт, который я должен был реализовать на Java, и повторное его использование с помощью Rails.
Ответ 6
Вам нужно знать, оба, структура RoR - это организационная и удобная система, если вы хотите, то, что она организует, - это ваш рубиновый код.
Если вы запрограммировали до этого, вот большинство ваших ответов:
http://www.ruby-doc.org/core/
http://railsapi.com