简析.net 三层或多层架构
.net 三层架构,其实该架构也可以用于其它的语言,只是语言的不同,但其原理是相同的,下面简单介绍一下的结构:
三层其实大家都能讲的出来,但是不是所有的人都能把内在的东西说清楚,我曾经面试一些人叫他们把三层的原理讲一下,都是这样描述的,三层:表示层,逻辑层,数据层。至于怎么去组织这层与层的关系,怎么去区分这这三层,代码怎么仿制,他的好处在哪里,就说的不是很清楚了。
下面我简单的介绍一下三层的一些细节的地方,在实际的项目中怎么去组织:
1.三层:表示层,逻辑层,数据层。需要在解决方案里建立五个项目(都是类库),当然命名也是需要规范的,
比如:公司名.项目名.类库名,实例:Zbird.ERP.BLL
具体的项目名是:
1.Zbird.ERP.IDAL(数据访问接口)。
2.Zbird.ERP.DAL(数据层,操作数据的)。
3.Zbird.ERP.BLL(逻辑层,具体的逻辑),其中这里最好是再建立一个文件夹,比如(Entity_BLL)
4.Zbird.ERP.Model(实体映射)。
4.Zbird.ERP.DALFactory(数据工厂),为了解耦所以需要加这一层。
重文件夹的意思能看的出来是数据访问的逻辑。其它的业务逻辑就可以直接放在外面。
如果还要继续分的话比如:Zbird.ERP.Utility,把一些公用的类放的这里。如果有控件或者有其它的再继续分,
比如Zbird.ERP.WebControls。
说到这里你可能要问,那表示层到哪里去了,表示层其实一个概念,至于你要怎么展现数据,就需要建立对应的层,比如是用winform,或是web,或是console,等都可以的,这也是为什么要建立三层的其中原因之一。
下面介绍一下项目之间的引用关系。
从数据层开始,这是最底层的东西,需要引用实体映射,也就是model 层,还有实体接口 IDAL,这也是一个关系约束,如果有些公用的类库,可能就需要引用公用的类库,
逻辑层:需要引用model 层,数据访问层DAL,还有实体接口 IDAL ,数据工厂DALFactory,如果有些公用的类库,可能就需要引用公用的类库,
表示层: 需要引用model 层 ,逻辑层BLL ,如果有些公用的类库,可能就需要引用公用的类库。
要需要注意的是不要乱引用项目,这样就是失去三层的意思。
下面介绍一下,使用该架构的好处:
1.可以灵活的切换表示层。
2.适合团队开发。
3.灵活的切换数据库。
4.项目关系解耦。
5.容易上手。
关于三层架构就介绍到这里,只要还有一些细节的地方需要自己再想一想,如果有问题可以与我联系,
E-Mail:likegs06@163.com
……