Rails将ActiveRecord与Business Logic分离的应用程序

我最近遇到了Robert Martin的(Uncle Bob)关于如何根据用例构建rails应用程序的主题演讲。 我发现这非常有趣。

以下是主题演讲的链接: 建筑:失落的岁月

这是一个示例项目,根据罗伯特·马丁在其主题演讲中提到的原则构建应用程序: Guru Watch

我想知道是否有完善的rails应用程序以这种方式构建( 用例驱动方法/实体 – 控制 – 边界架构/从前端解耦后端

好吧,我无法分享代码,但我可以指出你的方向。 我们一直在我们的应用程序中使用这个gem: https : //github.com/collectiveidea/interactor 。

我受到Martin的主题演讲的启发,这个应用程序的开发非常顺利:)。 在ActiveRecord和Business Logic分离的情况下,我们执行了以下操作:

我们的业务逻辑中的每个类都有一些DatabaseEntity对应的类。 这个对应的是使用另一个类 – 我们的ActiveRecord适配器。 它正在查询相应的ActiveRecord模型并将ActiveRecord实例转换为业务逻辑类的实例。

毕竟,大多数代码都集中在这个适配器中。