版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
软件系统的分层开发第一章课程地位2/41每阶段已包括:项目实战、COT课程总课时:
958本课目标学完本门课程后,你能够使用三层架构开发应用系统使用实体类在各层间传递数据3/41课程结构图4/41课程项目展示学生信息管理系统酒店管理系统教员演示课程项目5/41相关课程回顾WinForms程序运行后是否生成可执行文件?C#语言中的异常处理语句是什么?在中如何填充DataSet数据集?提问6/41预习检查为什么使用分层架构?程序集包含哪两种文件?导致异常的原因有哪些?异常处理语句中出现多个catch块,如何排列?提问7/41本章任务使用分层的方式实现简单查询搭建基本的分层架构实现基本分层系统的功能8/41本章目标理解分层开发的思想掌握搭建分层架构的方法.NET异常处理机制及多路异常捕获9/41“混沌”的代码S1的学生信息管理系统显示学生信息功能界面操作代码获取数据代码其它代码窗体类几个人共同开发同一个件,效率低改用控制台显示几乎重新编写重用获取数据功能在窗体内,不好重用演示示例1:混沌的代码问题10/41从混沌到清晰:分层清晰的结构协同开发重用移植获取数据代码界面操作代码不同职责分开管理演示示例2:分层后的MySchool11/41生活中的“分层”服务员只管接待客人厨师只管烹炒客人要的美食他们各负其责共同协作为客人提供美食顾客饭店12/41软件开发的“分层”HR系统外包A国数据访问层B国UI设计C国持久化层D国
业务处理层13/41分层架构功能模块按照职责不同统一管理操作界面显示数据表示层(UI)操作数据库数据访问层(DAL)根据职责不同起的名字相同职责可进行分层,根据职责不同起名字并不是绝对的14/41解决方案Windows项目类库项目……控制台项目解决方案与项目解决方案中可有多个项目,项目对应到层右键设置启动项目15/41类库项目与程序集VisualStudio可创建自定义的类库类库项目可编译为dll(程序集)程序集是.NET应用程序的主要构造块包含编写的功能模块、功能所涉及的资源等类库程序集:dll可执行程序集:exe类库项目有默认程序集名称和命名空间名称16/41层之间的关系项目对应到层,层间的功能如何调用?通过添加项目引用实现层间的调用关系方式一引用dll引用类库项目问题方式二17/41搭建分层结构关键步骤创建应用程序项目UI(表示层)创建类库项目DAL(数据访问层)添加两层之间的依赖关系分别实现各层的代码操作演示:分层结构的搭建123418/41常见错误常见错误类库的修改不能及时反映到调用问题分析类库项目未重新编译引用错误解决方法单独编译类库项目重新添加引用19/41学员操作——显示学生信息需求说明使用分层架构实现显示学生信息功能要求显示学生的学号、姓名、性别、出生年月……练习完成时间:20分钟20/41共性问题集中讲解常见问题及解决办法代码规范问题调试技巧共性问题集中讲解21/41分层优势初体验找两个实现了功能的同学的UI层和数据访问层,
整合完成功能分层优势职责分开无损替换降低依赖复用容易操作演示:整合两名学员的项目问题22/41学员操作——显示年级信息
需求说明在学生查询窗体,添加下拉列表下拉列表绑定年级信息练习完成时间:30分钟23/41共性问题集中讲解常见问题及解决办法代码规范问题调试技巧共性问题集中讲解24/41学员操作——实现登录2-1训练要点搭建分层架构的Windows程序实现项目间的引用关系需求说明实现管理员登录功能登录成功后显示系统主界面用户名和密码非空验证指导25/41讲解需求说明学员操作——实现登录2-2实现思路在数据访问层项目中添加AdminService类实现登录方法访问数据库判断用户名+密码组合是否正确在表示层添加登录窗体、主窗体调用数据访问层方法,并实现登录验证登录验证通过后打开主窗体完成时间:35分钟指导26/41共性问题集中讲解常见问题及解决办法代码规范问题调试技巧共性问题集中讲解27/41账户姓名金额300123张三300124王五47,000311320李四为什么需要异常处理Trade(){Sendquery();}//…….//…….020,000数据库系统将命令发送到数据库中拒绝交易余额=20000-25000系统故障为保障系统出现故障时能够自动处理,需要使用异常处理网上银行:张三转账25000到李四的账户上问题28/41异常处理代码错误公共语言运行库遇到意外资源不可用异常程序执行异常处理恢复程序29/41程序执行过程程序在执行过程中可能出现因多种原因引发的异常Exception类型2-1公共语言运行库引发的异常派生自SystemException类常见的异常类型包括:SQLExceptionArgumentNullExceptionFileNotFoundExceptionIOExceptionApplicationException……Exception类是所有异常的基类30/41属性名称说明Source此属性表示导致异常发生的应用程序或对象的名称
Message提供引起异常的详细信息StackTrace此属性提供在堆栈上所调用方法的详细信息,并首先显示最近调用的方法
InnerException对内部异常的引用,如果此异常基于前一个异常,则内部异常指最初发生的异常Exception类型2-231/41回顾:异常处理结构常见的异常处理结构try{//……}catch(异常对象){//异常处理}try{//……}finally{//对象清理的代码}try{//……}catch(异常对象){//异常处理}finally{//对象清理的代码}32/41定位异常类型在C#中如何准确的
确定异常的类型?try{//引发IO异常……
//引发数据库操作异常……//引发其它异常……}catch(Exceptionex){//异常处理}try{//引发IO异常……
//引发数据库操作异常……//引发其它异常……}catch(IOExceptionex){//处理IO异常}catch(SqlExceptionex){//处理SQL异常}catch(Exceptionex){//处理其它异常}多路捕获问题33/41多路捕获异常处理多路捕获异常处理的
代码结构try{//可能引发
异常的代码……}catch(异常类型1ex){//处理异常类型1}……catch(异常类型Nex){//处理异常类型N}catch(Exceptionex){//处理其它异常}注意:子类异常在前,基类异常在后演示示例3:多路捕获异常处理语法34/41抛出异常使用throw抛出异常//方式一try{//可能引发异常的代码}catch(SqlExceptionex){
throwex;}catch(Exceptionex){throwex;}//方式二try{//可能引发异常的代码}catch(SqlExceptionex){
throw;}catch(Exceptionex){throw;}演示示例:使用throw重新抛出异常结论:使用方式二可以更精确的定位异常发生的位置35/41学员操作——登录功能的异常处理2-1
训练要点使用throw语句抛出异常异常的多路捕获需求说明实现登录功能数据访问层和表示层方法的异常处理在数据访问层多路捕获异常,并重新抛出在表示层多路捕获异常,数据访问异常提示“数据库操作失败”,其它异常提示“发生未知异常,请联系厂商”指导36/41讲解需求说明学员操作——登录功能的异常处理2-2
实现思路数据访问层方法中添加异常处理,将捕捉的异常抛出在表示层捕捉异常SQLException,提示“数据库操作失败”在表示层捕捉异常Exception,提示“发生未知异常,请联系厂商”完成时间:15分钟指导37/41总结分层架构的优势两层架构中包含数据访问层和表示层两层架构的搭建步骤异常处理中可以使用多个catch进行多路捕获异常38/41创建表示层创建数据访
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 聊城职业技术学院《的分层开发技术》2023-2024学年第一学期期末试卷
- 丽江师范高等专科学校《工程制图Ⅱ》2023-2024学年第一学期期末试卷
- 江西司法警官职业学院《学术论文写作(1)》2023-2024学年第一学期期末试卷
- 江汉艺术职业学院《健身俱乐部经营与管理》2023-2024学年第一学期期末试卷
- 湖北大学知行学院《山地户外运动》2023-2024学年第一学期期末试卷
- 自贡职业技术学院《商业银行与业务经营》2023-2024学年第一学期期末试卷
- 周口师范学院《教育历史与比较研究》2023-2024学年第一学期期末试卷
- 重庆科技学院《工程管理软件与BM技术应用》2023-2024学年第一学期期末试卷
- 浙江树人学院《图像处理软件应用》2023-2024学年第一学期期末试卷
- 长江大学文理学院《材料力学B(外)》2023-2024学年第一学期期末试卷
- 2024版塑料购销合同范本买卖
- 【高一上】【期末话收获 家校话未来】期末家长会
- GB/T 44890-2024行政许可工作规范
- 有毒有害气体岗位操作规程(3篇)
- 儿童常见呼吸系统疾病免疫调节剂合理使用专家共识2024(全文)
- 《华润集团全面预算管理案例研究》
- 2024-2025高考英语全国卷分类汇编之完型填空(含答案及解析)
- 2024年露天煤矿地质勘查服务协议版
- 两人退股协议书范文合伙人签字
- 2024年资格考试-WSET二级认证考试近5年真题附答案
- 2024年重庆南开(融侨)中学中考三模英语试题含答案
评论
0/150
提交评论