Ruby on Rails использует IDE или придерживается хорошего текстового редактора.

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

Должен ли я выделять время и ресурсы на использование (изучение) IDE для RoR? Пожалуйста, ответьте, если вы тот, кто использовал конфигурацию, аналогичную моей и IDE для RoR.

Это не вопрос о том, какая IDE лучше или какая платформа предпочтительнее для RoR.

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

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

И ... HTML, CSS и ruby ​​хорошо разбираются в текстовых редакторах, которые имеют самые основные функции форматирования.

С другой стороны, я считаю, что IDE, которые предлагают ручную поддержку (шаблоны, автозаполнение текста и т. Д.) Для генерации модульного тестирования (TDD) с помощью RSpec, являются привлекательными, поскольку это область, в которой у меня ограниченный опыт.

Меня больше всего беспокоит то, что я перейду на IDE, напишу приложение, а затем застряну, когда ruby, rails или какой-то другой ключевой компонент я использую обновления так, как никогда не ожидали разработчики IDE. Использование IDE и периодическое редактирование файлов или ресурсов вне конкретной парадигмы IDE сжигало меня в прошлом. Предыдущие ошибки также включали языковые функции, которые в среде IDE не учитывались должным образом, что ограничивало гибкость разработки.

Я также не уверен, что интеграция / зеркалирование «удаленного сервера» и контроль версий лучше всего осуществлять через интерфейс IDE. git произвел на меня впечатление своей эффективной и простой в использовании.

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

Заранее благодарю за ваши комментарии -

Перри


Приложение: похоже, здесь есть некоторые совпадения: Будет ли мне мешать использование IDE с Rails?


Вывод: много хорошей пищи для размышлений. Спасибо всем. Я рад, что начал свое изучение Ruby и RoR с unix и текстового редактора. Это отличное сочетание для текстовой среды, в которой живет RoR. Rvm, git, rspec, управление драгоценными камнями и генерация кода хорошо выполняются из командной строки. Они упростили работу с Hartl's Rails Tutorial и игру с примерами из «The Well Gounded Rubyist». Я собираюсь проверить 30-дневную бесплатную пробную версию Rubymine. Я ожидаю, что IDE добавит к моему первоначальному пониманию (+) способов. Интегрированное модульное тестирование было важным фактором в моем решении попробовать IDE, поскольку я наткнулся на Rspec. Я не думаю, что мое время (или деньги) было потрачено зря на textMate. Оба были потрачены не зря.


ПРИЛОЖЕНИЕ 2
Я использовал Ruby Mine 30 дней. Это было хорошо. Я решил придерживаться:

  • MacBook Pro
  • TextMate
  • мерзавец

... и все они очень хороши. Я могу очень быстро переключаться между тестированием, кодированием, просмотром и контролем версий. «Пакеты» TextMate иногда помогают в качестве справочника по коду CSS, Ruby и Rails.

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

  • Хорошо обоснованный рубин
  • Мета-программирование Ruby

person Perry Horwich    schedule 29.04.2011    source источник
comment
Раньше я использовал (в следующем порядке) GVIM - Eclipse / Aptana - Netbeans - Textmate, а затем обратно в GVIM. Никогда не оглядывался. Одним из источников, который помог мне начать работу с VIM, был github.com/carlhuda/janus. Это дистрибутив / пакет MacVim с плагинами VIM, готовыми для разработки на Rails. Я основал свои плагины на этом и использовал Pathogen для автоматической загрузки скриптов.   -  person Christian Fazzini    schedule 29.04.2011
comment
Спасибо, Крис. Это очень полезно. Хотел бы я проголосовать за ваш комментарий здесь в качестве ответа.   -  person Perry Horwich    schedule 29.04.2011


Ответы (3)


Большинство рубистов используют простой редактор. Что вам нужно, так это возможность легко переходить к определенным файлам, подсветка синтаксиса и действительно все. Ruby довольно лаконичен, а наши иерархии классов довольно плоские, поэтому обычно вам не нужно многое из того, что предлагает IDE.

Лично я использую vim с кучей плагинов и чувствую себя более продуктивным, чем когда-либо в моем Visual Студийные годы. Я купил лицензию на RubyMine некоторое время назад во время продажи, это фантастическая IDE, и я, вероятно, использовал бы ее, если бы по какой-то причине я не мог использовать редактор.

Если вам нужна рекомендация, я бы сказал vim с тремя плагинами - Rails.vim (чтобы vim лучше знал о рельсах и их структуре), Command-T (отлично подходит для быстрого перехода между файлами) и NERDTree - файл на основе графического дерева. браузер.

Как я уже сказал ранее, эти возможности - самая важная вещь для всего, что вы выберете, поэтому, даже если вы не пользуетесь vim, убедитесь, что выбранный вами редактор может делать эти вещи. В особенности CommandT, возможность нечеткого поиска файлов одним нажатием клавиши сэкономит вам бесконечные часы работы в браузерах файлов GUI в течение вашей карьеры.

person Matt Briggs    schedule 29.04.2011
comment
Отличный момент. Иерархии классов кажутся довольно плоскими, что снижает преимущества просмотра классов в среде IDE. - person Perry Horwich; 29.04.2011

Если вы используете Textmate, ничего менять не нужно. В нем есть все, что вам нужно. Просто убедитесь, что у вас есть подходящие связки ruby ​​/ rails, и все будет в порядке.

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

person nowk    schedule 29.04.2011
comment
Спасибо, теперьк. Я еще могу пойти по этому пути. Поэкспериментировать с IDE, помимо самых основных функций, может быть нетривиально. Я также немного беспокоюсь о том, чтобы стать зависимым или привязанным к чужой идиоме разработки, особенно с развивающимися инструментами с открытым исходным кодом. - person Perry Horwich; 29.04.2011

Ruby не является языком со статической типизацией, поэтому многие преимущества, которые вы получаете от автозаполнения IDE, недоступны. Некоторые среды разработки Ruby пытаются понять это (RubyMine, NetBeans и т. Д.) И выполняют свою работу честно, но их работа невыносимо медленная.

Вы обнаружите, что как только вы воспользуетесь ярлыками, которые предоставляет TextMate, вы не пропустите свою IDE.

Что касается рук, обратите внимание на Railscasts и Руководства по Rails. Я думаю, вы обнаружите, что время, проведенное на этих двух сайтах, заполнит 80-90% «условностей», которые вам понадобятся для начала работы.

person Paul Alexander    schedule 29.04.2011
comment
какая среда разработки динамического языка не выполняет автозаполнение? Никогда не видел этого раньше - person Matt Briggs; 29.04.2011
comment
Спасибо, Пол. Имеет смысл. Тем не менее, rails придает такое большое значение условностям, что я нахожу некоторые методы создания шаблонов или автотекста обнадеживающими. Просто просмотр списка рекомендуемых вариантов для модульного тестирования дает оправданное ощущение, что я придерживаюсь лучших практик. - person Perry Horwich; 29.04.2011
comment
@Matt: многие динамические функции рельсов, такие как атрибуты модели, создаются и генерируются во время выполнения. Это не то, что IDE может исследовать из кода. Некоторые фактически запускают версию вашего сайта в фоновом режиме и крадут состояние с работающего сервера, чтобы обеспечить автоматическое завершение. - person Paul Alexander; 29.04.2011
comment
@Perry: У TextMate довольно много шаблонов. Учитывая, что вся команда rails и многие из наиболее вовлеченных членов сообщества ruby ​​используют TextMate, вероятно, у него всегда будет самая последняя поддержка. - person Paul Alexander; 29.04.2011
comment
Фактически, атрибуты активных записей - одна из немногих важных вещей, подобных тому, что есть в рельсах, и по моему опыту вы, как правило, получаете от них хорошее автозаполнение (вероятно, потому, что ide считывает схему db). Например, 99,999% методов будут получены из определения класса или миксина, оба из которых легко поддаются синтаксическому анализу. Я использовал wing для python, aptana для javascript и несколько разных IDE rails и обнаружил, что автозаполнение почти такое же, как и для C # и Java. - person Matt Briggs; 29.04.2011