0

我正在开发我的第一个多层 MVC 应用程序。一款纸牌游戏。

我有3层如下

| 演示(MVC)| --> | BLL | --> | DAL(回购/工作单元模式)|

DAL 大多是通用的,我的 BLL 几乎为每个表映射 1-1。

现在我有“特殊”课程,只处理纸牌游戏逻辑(例如检查手牌是否有效,检查是否有人赢了)。这些类不需要与数据库通信。附加类:卡片、播放器。

将这些仅包含逻辑且不需要与 DAL 通信的类放在哪里对我来说最好?一个额外的项目?也许只是调整我的命名约定?

非常感谢任何输入!

4

1 回答 1

1

这些特殊的类在我看来就像它们将与主要对象(卡片、播放器等)一起构成应用程序的核心,因此它们属于业务逻辑层。

如果您的某些类与其他层有连接而其他层则没有,这无关紧要(也不应该)。但是,您可能想看看 Bob 叔叔的干净架构或 Alistair Cockburn 的六边形架构(又名“端口和适配器”),以了解如何(应该)构建域模型、用例和各个层。请注意,这些方法为插件带来了额外的灵活性,例如不同的持久性机制。这样做的代价是复杂性的增加(有些人可能会说是轻微的)。

于 2015-07-30T07:35:15.437 回答