- 1、本文档共74页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第10章 面向对象的系统设计 徐 天 宇 10.1.2详细设计 系统详细设计阶段的主要任务是确保设计方案能够为后续实施活动提供详细明确的依据。 对类和类的相互关系进行详细的定义、以及如何用具体的算法和数据结构来表示和实现是此阶段的具体内容。 1.设计模式的使用 设计模式是进行应用系统设计时可复用的惯用模式,设计模式总结了常用问题的解决方法,它使设计人员可以共享已有的设计经验,提高设计效率和质量。 对于面向对象的Web应用系统设计,目前主要使用的设计模式是MVC ⑴MVC设计模式 模型-视图-控制(model-view-control,简称MVC)结构是目前最常见的J2EE应用所基于的体系结构,MVC主要适用于交互式的Web应用, MVC结构 视图(View)显示Model的数据,提交由Controller提供的数据。 模型(Model)维护应用程序的状态和数据,可以接受来自View的查询并做出响应。同时当Model的数据发生变化时,它把变化通知给View , View根据Model的数据发生来更新自己。 控制器(Controller)定义了抽象的业务逻辑,用于控制业务流程。 用于描述Model如何对用户的动作做出反应,即处理事件。 MVC关系图 MVC在 Web系统中的应用 电子商务系统,适合采用MVC体系结构。 可以将一个应用的对象分为三类。 一类就是负责显示的对象, 一类对象包含商业规则和数据, 一类就是接收请求,控制商业对象去完成请求。 ⑵MVC的优点 1)松散的耦合; 2)并行的开发; 3)可扩展性; 4)可重用性; 5)模块的有效性; 6)模型的可移植性: ⑶MVC 体系结构的不足 1)理解困难,耗费时间; 2)增加了系统结构和实现的复杂性; 3)视图与控制器间过于紧密的连接。 设计模式的选择与应用 分析类+设计模式→设计类 定义设计类的第一步就是根据项目特点选择将要采用的设计模式。设计模式的选择要考虑到该模式对应的语言和环境,以及模式的适用范围。 基于JSP 开发网站时,通常有两种设计模式,称为Model1 和Model2 。 Model1和Model2 Model1:通过一组JSP的结合制作出来的,是以JSP为中心的设计模式。 Model2:是采用MVC架构的设计模式。 Model1 Model1模式其实还可以再分为两种, 一种是完全使用JSP来开发, 另外一种则是使用JSP+JavaBean的设计, Model1-完全使用JSP开发系统 (1)完全使用JSP开发系统。 优点是: l)开发时程缩短;。 2)小幅度修改非常容易; Model1-完全使用JSP开发系统 缺点: l)程序可读性降低; 2)程序重复利用性降低; 2)JSP+JavaBean架构的Model1 进行快速及小型的项目开发具有非常大的优势, 将部分可以重复利用的程序代码抽出来写成JavaBean,当用户送来一个需求时,通过JSP调用JavaBean负责相关数据存取、逻辑运算等的处理,最后将结果回传到JSP显示结果。 这样,不同的JSP可以调用许多共享性的程序代码,减少编写重复程序代码的工作,增加开发效率。 JSP+JavaBean架构 JSP+JavaBean架构的Model1 但是这种方式缺乏流程控制,缺少了MVC中的Controller去控制相关的流程, ②Model2 Model2就是采用MVC架构的开发模式。 Model代表的是应用程序的应用逻辑; View是系统的显示接口; Controller是提供应用程序的处理过程控制 MVC设计模式 基于Bean的MVC模型 可以利用JavaBean实现,也可以利用EJB实现,分别构成的系统是 JavaBean(M)+ JSP(V)+Servlet(C) EJB(M)+ JSP(V)+Servlet(C) MVC设计模式JavaBean(M)+ JSP(V)+Servlet(C) ⑶Struts框架 Struts是较好的JSP Framework ⑶Struts框架 2.设计设计类 在设计阶段定义的类,称它们为设计类。 识别设计类可以从分析阶段定义的分析类入手 要具体设计每个类的内容,包括为每个类设计操作、属性、关系、状态和设计类的特殊需求。 ⑴定义类的属性 设计类的属性时有些内容是必须要定义的,有些内容是可选的。 必须定义的内容有: (1) 属性的数据类型。 (2)属性的可见性 ①属性命名 属性名的一般形式: attributeName 首先应命名属性。 属性应该以一致的风格命名 属性命名与类命名的原则相似,使用2-3个英文单词,首单词的首字母小写,其他大写,意义要明确
文档评论(0)