Pull to refresh

Comments 20

>Чтобы создать что-нибудь в RoR, нужно идти в командную строку

Смущает слово «нужно»? А ручками создать файлы нельзя?
Эмм… Здесь я имел в виду что-то серьезное :) вроде контроллера, модели. Сейчас поправлю
Ну да, файл контроллера из 5-ти строк или вида из двух это очень серьезно и практически невозможно создать ручками :)
Да тут дело скорей не в том что сложно, но зачем, если есть полуавтоматические средства? А ручками все потом надо подкрутить и радоваться, что генераторы избавили от ненужной рутины :)
Ну, как вариант, из одного проекта можно (или нельзя?) просто скопировать файлы в другой, а не генерировать, а потом копипастить их содержимое.
> А ручками создать файлы нельзя?

Правило Генерации: «Избегайте ручного ввода кода, при любом удобном случае пишите программы, которые бы писали программы.» (С) «Философия UNIX».
controllers: интерфейс и деловая логика

Меня что-то смущает эта сторчка. Деловая логика вроде бы должна в большинстве своём содержаться в модели, а интерфейс (если вы имеете в виду интерфейс пользователя) — в представлении.
бизнес-логика всегда в контроллере, что вас смущает? Работа с данными в модели. Интерфейс наверное имелся ввиду не пользовательский, а интерфейс доступа к данным, я так понимаю.
Бизнес-логика в контроллере — это в корне неверный подход. Разделение: модель — данные, контроллер — логика работы с ними — это заблуждение, сформированное некоторыми туториалами по популярным фреймворкам, в которых такое разделение введено только лишь для простоты объяснения механизма MVC. На самом деле вся бизнес-логика должна размещаться в слое домена (то есть предметной области). Именно объектами этого слоя и манипулируют контроллеры, выполняя второстепенные сервисные действия, такие как создание, поиск и удаление объектов домена, авторизация и проверка данных (это спорно, очень многие относят это тоже к домену). Вообще, чем меньше кода в контроллерах тем лучше. Вся логика должны быть в объектах предметной области. Именно этот слой должен взаимодействовать с моделью данных путём делегирования либо, вообще, сливаться с ней полностью или частично, объединяя логику и механизмы персистивности (Active record).
Ух ты как круто, а где об этом можно в подробностях почитать?
О чём именно? Если о том как работать с бизнес-логикой то есть отличная книжка Eric Evans Domain-Driven Design. Наверное, в ней не со всем можно согласиться, но читается она очень интересно.
Не совсем с вами согласен, все зависит от задачи.

Сейчас времени маловато… :( Если и буду писать, то в рамках серии капель о Руби или что-то вроде отдельных кусочков инфы о Rails, потому что разжевывать все с нуля получается с трудом :( Вобщем, если поддержите и настоите на продолжении — то, возьмусь снова ;)
Моя мама говорит, что любое дело надо доводить до конца :) Я Вас морально поддерживаю и даже смог бы предложить посильную помощь. Например, соавторство.
для этого мы добавили ruby в начале команды

Это нужно только в Windows.
Продолжай! Интересно читать.
Для новичков будет лучшим руководством.
Давно добавил все статьи в избранное и жду продолжения!
Код во View типа:
<% 5.times do%>
<%= @message %>
<% end %>
— плохая практика.
Надеюсь, что продолжение всё же будет.
Автору отписал в л.с. вопрос о судьбе серий.
Sign up to leave a comment.

Articles