基于3层架构的课程管理系统 本模块工作任务 任务3-1:三层架构划分 任务3-2:数据访问层的实现 任务3-3:业务逻辑层的实现 任务3-4:表示层的实现 本模块学习目标 1、掌握三层架构的划分原理 2、掌握各层的设计思路,和层之间的调用关系 3、利用三层架构实现对课程管理模块的重构 4、巩固 OOP 的基本概念和 OOP 的编程思路 --------------------------------------------------------------------------------------------------------------------------------- 任务3-1:三层架构划分 效果与描述 图 3 .1 包含多个项目的3 层架构解决方案 本任务要求学生能够将原来的只有 1 个项目的课程管理模块,重构为标准的具有 5 个项目的3 层架构的模块,并进行恰当的初始化,仍能实现课程记录的添加、浏览功能。在此过程中理解 3 层架构的划分原理,各层的任务,层之间的调用关系。 本任务的业务流程: 将原项目改为U I层新建BLL/ DAL/COMMON/MODL项目并初始化 初始化后仍能实现课程记录的浏览和添加 业务逻辑层 数据访问层 界面层 图3 .2 单层转化为3 层架构的业务流程 相关知识与技能 3-1-1 三层架构的划分原理 三层架构的划分如下图: 图3 .3 三层架构原理图 1、 各层的任务 数据访问层:使用 ADO.NET 中的数据操作类,为数据库中的每个表,设计 1 个数据访问类。类中实现:记录的插入、删除、单条记录的查询、记录集的查询、单条记录的有无判断等基本的数据操作方法。对于一般的管理信息软件,此层的设计是类似的,包含的方法也基本相同。此层的任务是:封装每个数据表的基本记录操作,为实现业务逻辑提供数据库访问基础。 业务逻辑层:为用户的每个功能模块,设计 1 个业务逻辑类,此时,需要利用相关的数据访问层类中,记录操作方法的特定集合,来实现每个逻辑功能。 界面层:根据用户的具体需求,为每个功能模块,部署输入控件、操作控件和输出控件,并调用业务逻辑层中类的方法实现功能。 2、 层之间的调用关系 数据访问层的类,直接访问数据库,实现基本记录操作。 业务逻辑层的类,调用相关的数据访问类,实现用户所需功能。 界面层:部署控件后,调用业务逻辑层的类,实现功能。 将应用程序的功能分层后,对于固定的DBMS,数据访问层基本可以不变,一旦用户的需求改变,首先修改业务逻辑层,界面层稍做改动即可。这种做法使程序的...