2011-03-09 63 views

回答

2

如果按照single responsibility principle,其中规定,一类只为一个原因改变,答案是明确的:

创建3层(BLL/DAL/BO)

至于放置它们的位置 - 出于组织方面的原因,我会为每个图层创建一个不同的文件夹。

+2

我不明白物理文件夹配置是否会影响您的代码是否是SRP。 – jfar 2011-03-09 21:44:34

+0

@jfar - 公平点。我误解了这个问题。我想看到“图层”而不是“文件夹”扔我离开。 – Oded 2011-03-09 21:49:48

0

我更喜欢用我所有的数据访问代码创建一个类库,然后在MVC应用程序中引用它,或者使用依赖注入。

您可以将模型的文件夹用于页面的网站特定视图模型。

0

文件的物理位置取决于您。

物理位置不会使代码变得更糟或更好。

0

我不知道为什么,但我真的很讨厌“BLL/DAL/BO”的命名。我确信有一些“微软最佳实践白皮书”或某个地方说这是个好主意,这可能是问题所在。人们看到这一点,并认为如果他们说出这样的话,那么他们必须做到“正确”。

遵循SOLID原则和域驱动设计。

如何划分类,无论是文件夹,命名空间,程序集等都是个人喜好的问题。我个人喜欢将事情分解成很多组件,因为它使我更容易保持诚实并防止循环依赖,并将事物耦合到他们不应该耦合的事物上。虽然有太多的程序集肯定会出现问题,所以你也必须管理它。