最近和同事就在Rails应用程序中设计和编写模型的不同方法进行了一场辩论,这让我接触到了DCI在Rails上下文中。
然而,即使在查看此示例应用程序之后,我仍然无法完全理解整个概念。
目前,我在编写Rails应用程序时倾向于更多地遵循“按照书本”的方式。
因此,我想问几个问题--
- 什么是DCI,与普通的MVC(以及Rails中的vanilla ActiveRecord)相比,在实现MVC时有什么优势?
- 如何在Rails中实现它(换句话说,所有这些模块是什么意思)?
编辑
我想在 RoR 的背景下进一步扩展我的问题 - 在 Rails 中,模型和控制器之间是否建议使用另一层抽象?在不同规模的应用程序中有多普遍?