Недавно мы решили составить общее руководство для определенного проекта Rails3.И у нас возникли некоторые проблемы с формализацией критериев: где должен быть размещен код?
Для моделей мы получаем следующее: метод должен быть добавлен в модель, если ...
- itизменяет атрибуты модели.
- работает как ярлык для длинной последовательности вызовов методов модели и имеет хорошее (семантическое) имя.
- переопределяет некоторые функции.
- он должен быть вставлен из-за архитектурных проблем.
Метод не должен быть вставлен, если ...
- он используется для представления данных (кроме случаев, когда работают агрегации).
- это синтаксический сахар (синтаксис должен быть постоянным)
- возвращает значение константы (используйте константы или переменные класса)
- это псевдоним для другого метода (используйте стандартный rubyспособы создания псевдонимов)
- имеет более-менее сложную логику и ничего не меняет в БД (переместить в библиотеку)
Что также может быть добавлено в качестве критерия?Какие книги \ статьи охватывают такие вопросы?