Консерны моделей
— разделение кода между моделями
— извлечение несущественного кода
из модели
11
Slide 12
Slide 12 text
https://signalvnoise.com/posts/3372-put-chubby-models-on-a-diet-with-concerns
“Put chubby models on a diet with concerns”*
DHH, Dec, 2012
* Посади свои пухлые модели на диету с консернами
12
Naming convention*: Example
30
* соглашение об именовании
Типичная ошибка:
Slide 31
Slide 31 text
Naming convention: Example
31
Тип Правило Пример
Модель Ability (-able) Archivable
Контроллер Present Perfect (-ed) Archived
Роуты Model/Controller archivable
Slide 32
Slide 32 text
Namespaces: Example
32
Slide 33
Slide 33 text
Naming convention: Example
33
Тип Правило Пример
Модель Ability (-able) Archivable
Контроллер Present Perfect (-ed) Archived
Роуты Model/Controller archivable
Декораторы Has- HasArchive
Сериалайзеры With- WithArchive
with_model With + Model WithArchivable