之前做过三层登录,其实七层就是在三层的基础上加上设计模式:
七层分别为Entity(实体层)、DAL(数据访问层)、IDAL(接口层)、Factory(工厂层)、BLL(业务逻辑层)、Facade(外观层)、UI(界面层)
七层在三层的基础上只是多了三个层分别为IDAL、Factory、Façade;为什么只多了三个?因为三层里的Model层相当于七层里的Entity实体层
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/663842e689d149db34bef4e200854a67.png)
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/ac5843c1b5f1d557f9d40f3316f8762d.png)
实现步骤:
1、创建Entity,实现业务实体。
2、创建IDAL,实现接口。
3、创建DAL,实现接口里的方法。
4、增加APP.config里的配置信息,为提供DAL的程序集。
5、创建Factory,返回程序集的指定类的实例。
6、创建BLL,调用Factory,得到程序集指定类的实例,完成数据操作方法。
7、创建Facade,调用BLL,得到BLL层的处理结果返回值。
8、创建UI,调用Facade里的数据操作方法,实现登录。
层名 | 引用关系 |
---|
UI层 | Facade层、Entity层 |
Facad层 | BLL层、Entity层 |
BLL层 | Factory层、Entity层、IDAL层 |
Factory层 | IDAL层 |
IDAL层 | Entity层 |
DAL层 | IDAL层、SqlHelper层、Entity层 |
(1)开发人员可以只关注整个结构中的其中某一层;
(2)就是解耦和了,降低层与层之间的依赖;
(3)利于标准化,有了标准后更容易提高效率;
(4)利于各层逻辑的复用,这个举个例子:UI层可重复利用Facade层的方法;
(5)可以很容易用新的实现来替换原有层次的实现。