机房重构之七层登陆

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/chenguanghan123/article/details/81607184

        前一段时间,我们已经了解到三层分为UI层、BLL层和DAL层。面向对象系统的设计与分析实际上就是追求的两点:一是高内聚,一是低耦合。这也是我们软件设计所要追求的,在三层的基础上继续解耦,从而引出今天咱们所要学习的主题——七层。下面就让我们来看看七层在机房重构实践中的具体应用。

 

       (1)UI(User Interface):表示层,负责与用户进行交互,显示、接受数据,也做一些简单逻辑处理,如:输入数据有效性判断、显示各种异常、处理Dataset(内存中虚拟数据库)记录集数据。只与外观层(Façade)、实体类(Entity Class)两个项目发生关联。

 

  (2)Façade:外观层,负责整合业务逻辑层的方法,为一些有共性的方法提供统一的接口,以供UI层调用。只与业务逻辑层(BLL)、实体类(Entity Class)有关联关系。

 

  (3)BLL(Business Logic Layer):业务逻辑层,业务逻辑层是系统的核心,它承担了所有的逻辑判断,实现了程序的功能,它是灵活的。B层既是调用者,又是被调用者,因此,要适当的进行设计达到解耦的效果。虽然B层被Facade层调用,但是B层不用去了解U层的情况。程序每一个功能在B层都对应一个类。只与工厂(Factory)、接口层(IDAL)、实体类(Entity)有关联关系。

 

  (4)IDAL:接口层,对数据访问层的方法进行抽象,是调用数据访问层方法的接口,提高了系统的可扩展、可维护性,更换数据库等操作更加方便。只与实体类(Entity)有关联关系。

 

  (5)DAL(Data Access Layer):数据访问层,提供数据访问的方法,不储存逻辑。在接口中对数据库操作语句进行组合装配。数据访问层是数据库的管理者,但不是访问者,不直接与数据库发生关联。数据库中每个表都对应一个数据访问层的 (访问控制)类。在数据访问层中有SQLHelper类,专用于存放公用的访问数据库方法以让其他访问控制类调用,实现代码复用。数据访问层只与接口层(IDAL)、实体类(Entity)有关联关系。

 

  (6)Factory:工厂层,用于创建接口对象,是业务逻辑层与接口层的桥梁,对二者进行解耦合。Factory就是是设计模式中的简单工厂模式中的简单工厂了,专门用于创建接口。工厂层只与接口层(IDAL)有关联关系。

 

  (7)Model:Model层中保存的都是实体类(Entity Class)相当于加强的数据结构,实现了对数据的封装。数据库中每个表都对应一个实体类,表的字段就是实体类的属性,类型一一对应。UI、BLL、DLL三层的交互主要就是通过实体类作为参数,并返回信息。实体类不与任何层发生关联关系。

猜你喜欢

转载自blog.csdn.net/chenguanghan123/article/details/81607184
今日推荐