Ruby: использование Reek в качестве учебного пособия - PullRequest
3 голосов
/ 16 мая 2011

Может ли Рик быть полезным в обучении рубиновому нубу передовой практики или для этого требуется опытный рубиновый глаз, чтобы использовать и интерпретировать?

У меня средний год или опыт программирования, но в основном это C-варианты. В последние несколько лет я слегка использовал Ruby в качестве служебного скриптового языка, но мой код ruby, очевидно, в значительной степени просто транслитерирован C. Теперь я хочу использовать его как серьезный инструмент и хочу изучить «путь ruby».

Я планировал использовать TDD / BDD с самого начала, чтобы обеспечить необходимую учебную обратную связь, и похоже, что Рик может быть полезен для предоставления отзывов о нестандартных формах и применениях. Однако, благодаря многолетнему опыту, я знаю, что такие инструменты могут быть обоюдоострыми мечами, которые требуют предварительного опыта для использования, и в руках новичка вызывают больше проблем, чем решают.

Есть ли у кого-нибудь опыт использования река (или подобного инструмента) таким образом?

Если это имеет значение, я сначала сосредоточусь на написании автономных приложений для MacOS X, т. Е. Без рельсов, серверного оборудования и т. Д.

Ответы [ 4 ]

3 голосов
/ 16 мая 2011

Нет, Рик не предназначен для проверки в стиле Ruby.Если вам нужна такая вещь, я бы предложил Roodi - или, что еще лучше, соединиться с кем-то, кто может показать вам хороший стиль Ruby.

Я написал Reek как небольшой исследовательский проект, и, честно говоря, это не так.Он так же полезен, как и простые инструменты, такие как flay, flog и rcov.Научитесь быть лучшим программистом, устраняя дублирование и сложность, а также используя TDDing свой код.

1 голос
/ 18 ноября 2016

Посмотрите на RuboCop

Он обнаруживает множество мелких вещей и может даже автоматически исправить некоторые из них. Если вы используете Git, вы можете сохранить свои изменения перед запуском RuboCop, чтобы вы могли видеть исправления с помощью git diff.

1 голос
/ 16 мая 2011

Рик предупреждает о возможных проблемах проектирования (и некоторых более простых вещах), но это не помогает вам писать идиоматический Ruby.Честно говоря, я думаю, что чтение функций столь же ценно, как и фактическое выполнение reek.

Мой совет для тех, кто работает с C-подобными языками: вытащите цикл из вашей системы.Притворись, что его не существует.Это вынудит вас к более рубиновому идиому.

0 голосов
/ 23 июля 2011

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

Недавний Railscast о том, как он проводит тестирование, является отличным способом настройки, затем я вернулся и просмотрел другие учебные пособия по спецификациям запроса, Capybara, Metrical и т. Д.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...