




已阅读5页,还剩17页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
三层结构设计思想剖析 回顾 面向对象设计的5大基本原则SRP 单一职责原则OCP 开闭原则LSP 里氏替换原则DIP 依赖倒置原则ISP 接口分离原则 预习检查 1 什么是三层结构 2 三层结构如何划分 3 三层结构的层间依赖关系 4 三层结构是解决软件设计问题的终极方案吗 本章任务 完成联机考试系统三层结构划分 表示层MySchool业务逻辑层MySchoolBLL数据访问层MySchoolDAL用三层结构实现不同类型用户登录 数据访问层 业务逻辑层 表示层 什么是三层结构 三层结构是相对于传统的单层结构而言 1 三层结构思想是对现代工业生产中 精细分工 思想的一种诠释 没有必要重复的发明轮子2 三层结构的设计目标是通过 精细分工 分而治之的设计思想 实现软件模块的高类聚 低耦合 3 三层结构的三个基本层次 UI BLL DAL 为什么需要三层结构 服务员只管接待客人厨师只管烹炒客人要的美食采购员只管按客人需求采购肉 海鲜 蔬菜他们各负其责共同协作为客人提供美食 顾客 饭店 为什么需要三层结构 离职 请假 其他服务员代替 离职 请假 离职 请假 其他厨师代替 其他采购员代替 为什么需要三层结构 三层结构软件模型 表示层 业务逻辑层 数据访问层 软件系统 饭店 单层结构VS三层结构 单层结构 三层结构 效率低下 不利于大型团队分工协作难以适应需求变更安全性奇差 效率高 有利于大型团队分工协作能有效的适应复杂的需求变更安全性高 三层结构建模 表示层 业务逻辑层 数据访问层 数据库 为用户提供交互操作界面 负责核心业务逻辑的处理 实现数据库访问 服务员 厨师 采购员 三层结构的实现 UI层 表示层 为用户提供一种交互式操作界面 三层结构的实现 BLL层 业务逻辑层 BLL是表示层与数据访问层之间的桥梁 负责数据处理 传递 UI层提交的数据由BLL层进行处理 switch type case 管理员 loginPwd GetAdminLoginPwd loginID break case 学员 loginPwd GetStudentLoginPwd loginID break 三层结构的实现 DAL层 数据访问层 DAL根据BLL的请求参数实现对底层数据库的实际操作 读或写 BLL传递的业务请求由DAL层处理 业务逻辑层的方法是通过调用数据访问层定义的方法实现的publicStudentGetStudentByLoginID stringloginId returnstudentService GetStudentByLoginID loginId 数据访问层相应方法的定义publicStudentGetStudentByLoginID stringloginID Studentstudent newStudent using SqlConnectionconn newSqlConnection connString conn Open returnstudent 三层结构的层间依赖关系 三层之间依赖关系 表示层 业务逻辑层 数据访问层 三层结构的层间数据传递 三层之间的数据传递方向 业务逻辑层 数据访问层 表示层 客户请求 客户请求 响应数据 响应数据 搭建三层结构步骤 1 创建表示层项目 Windows应用项目 2 创建业务逻辑层 类库 3 创建数据访问层 类库 4 添加层间依赖关系 表示层 业务逻辑层 数据访问层 现在我们打开VSIDE环境逐层搭建三层结构 搭建表示层 2 在弹出的 新建项目 窗口中 选择Windows应用程序 选择语言种类 项目类型 创建解决方案 输入项目名称MySchool 选择项目生成路径 1 文件 新建 项目 创建一个新项目 搭建业务逻辑层 2 在弹出的 新建项目 窗口中 选择类库 选择语言种类 项目类型 项目名称 MySchoolBLL 选择项目路径 选择 添入解决方案 1 文件 新建 项目 创建一个新项目 搭建数据访问层 2 在弹出的 新建项目 窗口中 选择类库 选择语言种类 项目类型 项目名称 MySchoolDAL 选择项目路径 选择 添入解决方案 如何设置层间依赖 1 文件 新建 项目 创建一个新项目 添加各层之间的相互依赖 添加表示层对业务逻辑层依赖 1 右键单击 引用 选择 添加引用 2 选择 项目 选中 逻辑层 单击确定 添加业务逻辑层对数据访问层的依赖与此类似 完成对逻辑层的引用 完成本章任务的步骤 1 创建表现层项目 UIAPP2 创建业务层项目 BLLLIB3 创建数据访问层项目 DALLIB4 创建实体模型层项目 ModelsLIB5 添加层间依赖
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 租赁公司年终总结汇报报告
- 福建省晋江市潘径中学2026届英语九年级第一学期期末教学质量检测模拟试题含解析
- 云南省镇康县第一中学2024-2025学年高二上学期11月月考历史试卷
- 2025年轨道车司机(高级技师)职业技能鉴定考试题库(含答案)
- 江苏省江阴市长寿中学2026届九上化学期中预测试题含解析
- 2026届山西省晋中市九年级化学第一学期期中质量跟踪监视试题含解析
- 柳州市重点中学2026届九年级化学第一学期期中检测试题含解析
- 租赁场地开办幼儿园合同范本(包含装修条款)
- 高层建筑空调系统销售、安装及安全运行合同
- 汽车行业售后担保合同质量保障与消费者权益保护
- 质量分析工具-5W1H分析法课件
- 《运动与位置》(31张)-完整版课件
- 五年级上册数学课件-2.1 轴对称 ︳青岛版 (共17张PPT)
- GJB9001C-2017质量管理体系检查内容的内部审核检查表【含检查内容】
- 半导体数字集成电路测试技术概要
- 心包积液以及心包填塞
- 商业银行内部审计技术与方法
- 河道清淤整治工程施工组织设计方案
- 论信息技术对公共行政的影响分析研究行政管理专业
- 技术部薪资等级晋升制度76799
- 生物化学:第2章 核酸的结构与功能
评论
0/150
提交评论