Изучение 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 мне нравится текстовый редактор. Простой и простой.
Ответ 7
<Предварительно > IDE: NetBeans
Книга: Agile Web Development с Rails
Установка: Мгновенные рельсы
Ответ 8
-
Структуры данных и алгоритмы с объектно-ориентированными шаблонами проектирования в Ruby Бруно Р. Прейс | Опубликовано в 2004 году
-
Учитесь программировать Крис Пайн | Прагматическая книжная полка Опубликовано в 2006 году, 176 страниц
-
Г-н. "Скромная скромная рубиновая книга" Джереми Маканали | Опубликовано в 2006 году, 147 страниц
-
Программирование Ruby: Руководство для прагматического программиста Дэвид Томас, Эндрю Хант | Addison-Wesley Опубликовано в 2000 году, 608 страниц
-
Rails в двух словах C. Fauser, J. MacAulay, E. Ocampo-Gooding, J. Guenin | O'Reilly Media Опубликовано в 2009 году, 352 страницы
-
Ruby Best Practices Грегори Т. Браун | O'Reilly Media Опубликовано в 2009 году, 328 страниц
-
Ruby Essentials | Techotopia Опубликовано в 2007 году
-
Безопасность Ruby on Rails Хейко Веберс | OWASP Опубликовано в 2009 году, 48 страниц
-
Руководство пользователя Ruby Марк Слагелл | Опубликовано в 2005 году
-
The Book Of Ruby Хью Коллингборн | Опубликовано в 2009 году, 425 страниц
-
Маленькая книга Рубинов Хью Коллингборн | ООО "Темный неон" Опубликовано в 2008 году, 87 страниц
-
почему (острый) путеводитель по Ruby почему повезло жесткое | Опубликовано в 2008 году
Ответ 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 (не все функции работают все время).
Ответ 18
Это выглядит как отличный ресурс для таких людей, как я, которые приходят с PHP на RoR
http://railsforphp.com/ Также есть книга Rails для разработчиков PHP
Ответ 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 есть приличный блог.
Ответ 30
Подождите пару месяцев для Learning Rails Саймона Сен-Лорана, Эдда Дамбилла, чтобы выйти в ноябре. Эта серия книг колоссальна, и эта книга будет посвящена последней версии Rails.