Изучение Ruby on Rails

Как сейчас, я разработчик Java и С#. Чем больше я смотрю на Ruby on Rails, тем больше я действительно хочу его изучить.

Что вы нашли лучшим маршрутом для изучения RoR? Было бы проще разрабатывать Windows, или я должен просто запустить виртуальную машину с Linux?

Есть ли среда IDE, которая может соответствовать надежности Visual Studio? Любые программы для развития, которые дают хорошие накладные расходы, что делать? Какие-нибудь хорошие книги?

Серьезно, любые советы/трюки/тирады были бы удивительными.

Ответ 1

Я перешел с С# в своей профессиональной карьере, чтобы посмотреть на Ruby и RoR в своей личной жизни, и я нашел, что linux будет немного более привлекательным лично для развития. В частности, теперь, когда я начал использовать git, реализация стала более чистой в Linux.

В настоящее время я выполняю двойную загрузку и приближаюсь к запуску Ubuntu на полный рабочий день. Я использую gedit с различными плагинами для среды разработки. И по состоянию на конец 2010 года я пытаюсь использовать Vim для разработки, даже над Textmate на OS X.

Большое количество разработчиков Rails использует (gasp) Macs, что фактически заставило меня задуматься в этом направлении.

Хотя я еще не пробовал, Ruby in Steel дает вам IDE Ruby внутри мира Visual Studio и IronRuby - это вкус .NET Ruby, если вам интересно.

Что касается книг, то книга Programming Ruby (также известная как Pickaxe) от прагматичных программистов является де-факто для обучения Ruby. Я укусил пулю и купил эту книгу и Agile Web Development с Rails; обе книги были превосходными.

Peepcode скринкасты и книги в формате PDF также отлично подходят для начала работы; по 9 долларов за screencast, это трудно пошло не так. Я действительно купил 5-Pack.

Также проверьте следующее:

Я заработал через отставание подкастов Rails и Rails Envy в прошлом месяце, и они обеспечили прекрасное понимание множества тем, даже в отношении разработки программного обеспечения в целом.

Ответ 2

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

В настоящее время я делаю RoR на окнах. Мой совет - избегать окон, если сможете. Многие вещи не работают, и сообщество рельсов действительно действительно не заботится о вас. Переход на Git действительно перепутал меня, так как он не очень хорошо работает на окнах. Из-за этого многие из драгоценных камней потерпят неудачу (Heroku выглядит как классный инструмент - слишком плохо для меня, он не может справиться с установкой окна Git). Капистрано не работает. Это продолжается и досадно.

Кроме того, в глубине души вы всегда задаетесь вопросом, когда что-то не работает. "Это проблема с рельсами/окнами?" Я не уверен, что это решается с помощью linux, потому что Linux приносит свои проблемы, как постоянно обновляя все эти зависимости и т.д. Если это то, что вам нравится, может быть для вас подходящим выбором. Те дни, когда я наслаждаюсь системной игрой, стоят позади, и я просто хочу продолжить свою работу. Я планирую установить ubuntu на домашней машине, чтобы я мог познакомиться с вещами вроде capistrano, поэтому, возможно, мое мнение изменится.

Я бы очень хотел предложить, если вы собираетесь делать rails dev в течение какого-то времени, когда вы серьезно относитесь к получению Mac. Если вы цените свое время и здравомыслие, он будет платить за себя почти мгновенно. В зависимости от того, как вы оцениваете свое время 10 часов отладки проблем с установкой Windows/Linux, и вы тратите столько, сколько стоит Mac.

Rails - это радость по сравнению с тем, что она заменяет, но это немного больно в том, что ее сторонники проскакивают мимо множества скучных, но важных вещей, таких как документация, проблемы совместимости и построение сообщества. Это намного мощнее других фреймворков, таких как Django, но иногда я просматриваю документацию и сообщество Django и вздыхаю, как парень с дикой сексуальной девушкой, смотрящей на свою дружку, но здравомыслящую и стабильную жену. Но тогда рельсы добавляют особенность, и я иду "Ohhh shiny!"

IMO the Rails Screencasts лучше, чем скринкапы Peepcode. Имейте в виду, что у RubyPlus есть скринкасты, они немного грубые вокруг краев. BuildingWebApps имеет бесплатный онлайн-курс, который начинает делать скринкасты на полпути.

Ответ 3

Путь наименьшего сопротивления:

  • Имейте простой веб-проект в виду.
  • Перейдите в rubyonrails.org и посмотрите на их "блог за 15 минут", чтобы получить удовольствие.
  • Получить копию O'Reilly Media Learning Ruby
  • Получите окно Mac или Linux.
    (Меньше ранних разочарований Rails из-за того, что Rails обычно разрабатывается на них.)
  • Получить копию Agile Web Development с Rails.
  • Получите версию Ruby и Rails, описанную в этой книге.
  • Запустите эту первую секцию книги, чтобы понять, что ей нравится.
  • Перейдите в railscasts.com и просмотрите самые ранние видео для более пристального просмотра.
  • Купите The Rails Way от Obie Fernandez, чтобы получить более глубокое понимание Rails и что он делает.
  • Затем перейдите на новейшую производственную версию Rails и просмотрите последние видеоролики railscasts.com.

Ответ 4

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

Основы:

  • Проворная разработка с Rails (книга)
  • InstantRails для быстрой среды ruby ​​/rails в Windows
  • Aptana как IDE
  • Subversion для управления версиями

Онлайн-уроки достойны, но разбросаны. Инвестируйте 30 долларов в книгу для более полного понимания.

Ответ 5

Я нашел http://railstutorial.org/book, чтобы стать отличным ресурсом для обучения Rails

Ответ 6

Мне очень нравится RubyMine от Jetbrains. Похоже, это очень полнофункциональная среда разработки, которую я пропустил от многих других альтернатив. Также для простого env мне нравится текстовый редактор. Простой и простой.

Ответ 8

Ответ 9

В настоящее время существует очень солидная текущая серия на NETTUTS, которая вас может заинтересовать.

Ответ 10

http://railsforzombies.org/ является приятным. Представляем новый способ изучения Ruby on Rails в браузере без дополнительной настройки.

Ответ 11

Как вы, я разработчик java/С#, пытаясь узнать больше Ruby On Rails.

Я беру бесплатный онлайн-курс Ruby on Rails Programming with Passion, является хорошим вводным курсом, проверьте его.

Мы используем NetBeans как IDE (win/mac/linux/solaris), если вы привыкли к Eclipse или Visual Studio, есть хороший шанс, вам понравится.

Ответ 12

Фантастическое решение! Очень полезно получить заземление в Ruby перед тем, как отправиться в Rails, поэтому вот мой подход к лучшему пути к Rails:

Помимо книг, самое главное - получить обратную связь о том, что вы делаете. Для этого я рекомендую проводить время в irc.freenode.net #ruby и #rubyonrails. Также чрезвычайно полезно публиковать то, над чем вы работаете, или иметь проблемы с этим в stackoverflow, поскольку комментарии, объяснения и различные способы мышления о вещах, которые люди предоставляют, неоценимы.

Вы также должны определенно проверить Ruby Rogues podcast, они предоставляют бесценную информацию, а комментаторы - очень уважаемые люди в сообществе Ruby. И для вашего удовольствия от просмотра и чтения (в этом порядке), направляйтесь к Райану Бейтсу Railscasts, а затем Эйфину Бедфорду Asciicasts.

Наконец, я рекомендую посмотреть на разные драгоценные камни на github, прочитать код и затем внести свой вклад в них. Вам не нужно чрезмерно амбициозно и делать массивные перекоды, особенно в первую очередь. Просто начните с небольших вещей, таких как редактирование, и сделайте файлы README немного более легкими для чтения.

Я не использую IDE, но в Railsconf я видел демонстрацию Rubymine от Jetbrains, и это выглядело довольно удивительно.

Ответ 13

0) УЗНАЙТЕ РУБИ. Это очень важно. Одним из огромных преимуществ Rails является Ruby: отличный язык, который очень мощный, но также удивительно легко понять. Пройдите несколько учебников по Ruby онлайн. Когда проблемы с кодированием появляются на Daily WTF, напишите их в Ruby. Вы быстро заберете его.

1) Пойдите, купите книгу "Ruby for Rails"

2) Ознакомьтесь с учебным пособием Rails и подпишитесь на Riding Rails.

3) Создайте приложение локально. Не используйте строительные леса.

4) Когда вы устанавливаете плагины в свое приложение, посмотрите код в этом плагине (в каталоге поставщика) и изучите его. Это один из лучших способов узнать внутренности Ruby и Rails. Когда вы не понимаете, как что-то работает, отправьте его здесь, и вам помогут 1000 человек.

Что касается других вопросов:

Да, вам понадобится среда Linux для разработки. Вы можете разрабатывать Rails в Windows, но это не значит, что это должно быть сделано. Множество драгоценных камней не ускоряется в Windows.

NetBeans хорошо работает как среда IDE. Если вы на Mac, вы получите уличный кредит для использования Textmate.

Ответ 14

Я удивлен, что так мало упоминалось о Why (Poignant) Guide to Ruby. Почему не может быть больше, но руководство легко найти в сети (Google указывает здесь в первую очередь) это очень легко прочитать и предоставил мое введение в Ruby.

После руководства я бы рекомендовал либо одну из книг, которую предложили другие, либо следующий за серией скринкастов в Learning Rails так как я выбрал достаточно Ruby on Rails, чтобы быть опасным. Как только вы закончите серию Learning Rails. то, что вы хотите сделать с Rails, начнет расходиться с общими учебниками и что там, где Railscasts станет прекрасным инструментом. Там не так много можно сделать с Rails, которые Railscasts не затронули в какой-то момент.

Ответ 15

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

Ответ 16

Мое первое предложение состояло в том, чтобы немного узнать о symbols. Rails - это не самая маленькая структура из всех когда-либо, и, хотя там определенно много, чтобы учиться, большинство из них начнет иметь смысл, если у вас есть хоть немного понимание того, что делает его другим ( "особенным" ) с других языков. Как указывалось, никакого точного аналога ни на одном из основных языков, но они сильно используются Rails, чтобы заставить вещи читать прямо и хорошо работать, и именно по этой причине я его воспитывал. Мое первое знакомство с Rails было также моим первым взглядом на Ruby (задолго до 2.0), и первое, что привлекло мое внимание, было тупой :things, который они проходили, и я спросил: "WTF это?"

Кроме того, проверьте RubyQuiz и прочитайте ответы других людей на этом сайте.

Ответ 17

Я пришел с фона Java в Ruby to. Я нашел этот учебник полезным http://www.ruby-lang.org/en/documentation/ruby-from-other-languages/to-ruby-from-java/. Когда дело доходит до обучения рельсов, я не могу сказать, насколько я использую консоль script \. Это позволяет вам играть с кодом и учиться делать то, о чем вы не уверены.

Единственной книгой, которую я когда-либо покупал, была Agile Web Development с Rails, Третье издание http://www.pragprog.com/titles/rails3/agile-web-development-with-rails-third-edition. Это было очень полезно и обеспечило хороший обзор структуры Rails. В дополнение к этому я регулярно смотрю Railscasts (http://railscasts.com), который является отличным блогом кастингов, который охватывает все виды релейных тем.

Я лично предпочитаю использовать Linux (потому что git работает лучше). Но я также использовал окна и, кроме того, git, я не думаю, что выбор ОС повлияет на ваше программирование.

Я использую netbeans для своей IDE и иногда vim (с плагином rails). Мне нравится netbeans, но я нахожу, что он все еще может быть немного шелушащимся, когда дело доходит до поддержки Rails (не все функции работают все время).

Ответ 19

Я использовал Java и С# на Windoze.

Я бы воспользовался этими источниками:

IDE: попробуйте Apatana RadRails 3 Sneak Peek: http://www.radrails.org/3. Это самая близкая вещь, которую вы получите в Visual Studio. Я играю с ним здесь и там, но все же люблю легкость Textmate.

ОС: Mac OS получает больше всего, если не всю любовь от сообщества Ruby. Все остальное рассматривается как ребенок-ублюдок.

Книги

  • Руководство по прагматическим программистам (книга с киркой)
  • Agile Web Development с Rails

Screencasts

  • Peepcode (pay) - хороший способ быстро забрать понятия.
  • Railscasts (бесплатно) - это хороший еженедельный способ пополнить новые драгоценные камни и концепции постепенно.
  • Railscasts (pro) также является хорошим способом подобрать концепции по довольно низкой цене.

Ответ 20

Источник ubber для любого Rails http://www.rubyonrails.org/, если у него его нет на сайте, вам, вероятно, это не нужно.

Быстрая поваренная книга - это Ruby on Rails: Up и Running вы можете получить ее от O'Rielly или выполнить поиск в Google для онлайновой версии. Они идут вам, хотя соглашения Rails и используют Instant Rails, который в порядке.

Лучшая книга Rails "Agile Web Development with Rails" Это супы с орехами Rails. Он проходит вас, загружая и настраивая Rails, Gems, все.

Если вы хотите стать Java-парнем и хотите переделать книгу, у O'Reilly есть "Rails для разработчиков Java" http://oreilly.com/catalog/9780977616695/?CMP=AFC-ak_book&ATT=Rails+for+Java+Developers

Ответ 21

Еще одна IDE, которую вы могли бы попробовать, - Aptana.

Ответ 22

О, я почти забыл. Вот еще несколько ресурсов Ruby screencast:

SD Ruby - у вас есть куча видеороликов в Интернете - я нашел, что их переговоры по отдыху SD9 и SD10 относятся к числу лучших из них, Другие разговоры о отдыхе предполагают, что вы все знаете. Они очень вводные и доводящие до конца.

Obie Fernandez в InfoQ - Restful Rails. Я также прочитал его книгу Rails Way и нашел ее информативной, но очень длинной извилистой и извилистой, а качество немного непоследовательно. Я многому научился из этой книги, но чувствовал, что это немного наказывается, чтобы читать через повторение и неулокальные вещи, чтобы добраться до хороших бит.

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

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

Ответ 23

Мое предложение - только начать - выберите небольшой проект, который вы обычно используете, чтобы изучить язык в стиле MVC (например, что-то с базой данных, возможно, некоторый основной рабочий процесс), а затем, когда вам нужно изучить концепцию, используйте один (или оба!)

Agile Web Development с Rails или Путь Rails

чтобы узнать, как это работает, а затем попробуйте.

Проблемы с Agile Web Development состоят в том, что они устарели и что сценарий слишком длится, потому что вы действительно хотите его построить один раз; Rails Way может быть трудно следовать, поскольку он отскакивает от ссылки на обучение, но когда это хорошо, это лучше, чем Agile Web Development.

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

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

Ответ 24

Я купил книгу "Просто Rails 2" Патрика Ленца.
Эта книга - отличное введение в Ruby и Ruby on Rails.
Что касается моей рубиновой установки и db, я использовал Cygwin.
Он поставляется с PostgreSQL, ruby ​​и svn.
Мне нравится PostgreSQL, потому что я пришел из Oracle
поэтому он чувствует себя более комфортно, чем MySQL.

Другая полезность, которую я нашел очень полезной, - pgAdmin
для доступа к базам данных PostgreSQL.

Первое, что мне нужно было сделать - это установить драгоценные камни.
Я получил файл tar gems из rubyforge
wget " http://rubyforge.org/frs/download.php/60718/rubygems-1.3.5.tgz"

Как только у меня была установка драгоценных камней, я установил

Рельсы
рубин-Postgres
Postgres
стойка

Мне также нужна система отслеживания проблем, поэтому я установил redmine.
wget " http://rubyforge.org/frs/download.php/60718/rubygems-1.3.5.tgz"

Я обнаружил, что использование UNIX-подобной среды (Cygwin) было предпочтительнее в моем случае, потому что многие из учебников были taylored для OS X или Linux.

Текстовым редактором, который я использую, является Textpad. Я ищу альтернативу. Я думаю, что vim с плагином rails может работать хорошо.

Ответ 25

Я исхожу из фона, не связанного с программированием. Я изучил PHP самостоятельно и недавно присоединился к фирме, специализирующейся на Ruby on Rails. У них есть комплексная программа обучения Rails, которая достаточно гибкая, чтобы вносить любые изменения, которые мы хотим реализовать. Хотя я не профессионал rails, я хотел бы поделиться своим опытом с рельсами. Я надеюсь, что это поможет.

Вот путь, которым я следую [в сочетании с инструментами, которые я использую]

  • Начните с простого рубинового гида. Это очень поможет, поскольку вся структура рельсов вращается вокруг классов и объектов.
  • Окружающая среда и ОС не важны. Хотя я работаю на Mac, я часто работаю в Linux и Windows, и у меня нет никаких проблем.
  • Начните с хорошей книги, в которой объясняется использование демонстрационного приложения. [Я использую Agile Web Development с Rails - по прагматичной книжной полке]. Есть много других хороших книг.
  • Как только вы закончите с приложением, у вас будет хорошее представление о структуре.
    • Попробуйте понять SQL-запросы, сгенерированные модулем Active Record.
    • Пройдите по направляющим Rails. Вы найдете структуру намного проще.
  • Продолжайте практиковать.

Несколько точек удара

  • Требуются годы, чтобы полностью изучить язык. Поэтому будьте терпеливы и не переставайте учиться.
  • Пройдите через rails api, как требуется. [При разработке вашего первого приложения]
  • Google, что вы не понимаете. Люди написали большие статьи почти по всем темам.
  • Использовать Stackoverflow:-) [Только если вы не можете найти решение самостоятельно.]
  • Загрузите railscast на свой телефон или видеоплеер. Наблюдайте за ними во время путешествия или в свободное время. Каждые несколько минут. Вы узнаете много вещей, а также узнаете лучший способ сделать что-то.

Инструменты

  • Shell [в Mac и Ubuntu]
  • Редактор [Textmate в Mac, Gedit в Ubuntu и Notepad ++ в Windows]
  • Firefox с Firebug для тестирования.

Наконец, мне нужно сказать одно: "Продолжайте пытаться". Все лучшее.

Ответ 26

Самый быстрый способ узнать что-либо, включая Ruby on Rails, - это программирование пары.

Найдите того, кто знает Rails, выберите пример приложения, присядьте и проработайте исправления ошибок, добавив функции.

Обмен знаниями невероятен.

Ответ 27

Я думаю, что скринкасты и короткие книги из Peepcode действительно хороши. У них есть скринкасты, чтобы вы начали, и у вас есть, когда вы становитесь более продвинутыми.

Ответ 28

Существует сайт под названием Softies on Rails, который написан несколькими разработчиками ex-.NET, которые могут быть полезны. У них есть книга под названием Rails для разработчиков .NET, которая появится в ближайшие несколько месяцев...

Я начал работать в ящике Windows, используя плагин RadRails для Eclipse и RubyWeaver для Dreamweaver (назад в течение 1.x дней Rails). С тех пор я перешел на Mac с помощью TextMate и не думал о возврате.

Что касается книг, я начал с The Ruby Way и Agile Web Development с Rails. Он определенно помогает создать фон в Ruby, когда вы начинаете входить в Rails.

Определенно посмотрите серию Railscast Райана Бейтса.

Ответ 29

Я нашел "The Rails Way" от Obie Fernandez превосходным и часто обнаружил, что ссылаюсь на него, когда Agile Web Development с Rails, похоже, недостаточно далеко. У Obie Fernandez есть приличный блог.