Что такое DCI и как он может сочетаться с Rails?

Недавняя дискуссия с коллегой о различных подходах к проектированию и программированию моделей в приложении Rails привела меня к DCI в контексте Rails. .

Тем не менее, я просто не могу уловить всю эту концепцию, даже после просмотра этого примера приложения.

В настоящее время я обычно придерживаюсь более или менее «книги» при написании приложения на Rails.

Итак, есть несколько вещей, которые я хотел бы спросить:

  • Что такое DCI и каковы его преимущества при реализации вместе с MVC по сравнению со старым простым MVC (и ванильным ActiveRecord в Rails)?
  • И как это можно реализовать в Rails (или, другими словами, что со всеми модулями)?

Редактировать

Я хотел бы еще больше расширить свой вопрос в контексте RoR — рекомендуется ли другой уровень абстракции между моделями и контроллерами в Rails? Насколько это распространено в приложениях разного масштаба?

23
задан GeReV 14 March 2012 в 15:39
поделиться