Критерии добавления нового метода в модель в приложении Rails - PullRequest
0 голосов
/ 28 января 2011

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

Для моделей мы получаем следующее: метод должен быть добавлен в модель, если ...

  1. itизменяет атрибуты модели.
  2. работает как ярлык для длинной последовательности вызовов методов модели и имеет хорошее (семантическое) имя.
  3. переопределяет некоторые функции.
  4. он должен быть вставлен из-за архитектурных проблем.

Метод не должен быть вставлен, если ...

  1. он используется для представления данных (кроме случаев, когда работают агрегации).
  2. это синтаксический сахар (синтаксис должен быть постоянным)
  3. возвращает значение константы (используйте константы или переменные класса)
  4. это псевдоним для другого метода (используйте стандартный rubyспособы создания псевдонимов)
  5. имеет более-менее сложную логику и ничего не меняет в БД (переместить в библиотеку)

Что также может быть добавлено в качестве критерия?Какие книги \ статьи охватывают такие вопросы?

1 Ответ

1 голос
/ 28 января 2011

Я настоятельно рекомендую вам прочитать Rails Antipatterns: лучшая практика рефакторинга Ruby on Rails . Обсуждается многое из того, что вы здесь рассмотрели, но это больше книга о лучших практиках. Многие темы довольно очевидны, если вы некоторое время работали с Rails, но это отличный ресурс для "проверки" ваших методов кодирования. Я предоставил это другим разработчикам в моей команде, и они дали действительно положительные отзывы об этом.

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