软件工程静态设计

软件工程静态设计

ID:38561185

大小:1.90 MB

页数:64页

时间:2019-06-14

软件工程静态设计_第1页
软件工程静态设计_第2页
软件工程静态设计_第3页
软件工程静态设计_第4页
软件工程静态设计_第5页
资源描述:

《软件工程静态设计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、图书管理系统——第8次课图书管理系统的静态结构设计(体系结构与模式)。今天的工作任务提交内容图书管理系统——系统类图。我们的进度,在这里工作任务: 图书管理系统的静态结构设计我们的进度,在这里提交内容:系统类图面向对象设计(OOD)设计原则MVC设计模式DAO模式类图建模技术——系统类图学习情景——图书管理系统体系结构设计 知识要点一览我们的进度,在这里静态结构设计类设计包设计接口设计动态结构设计(行为和交互建模)对象如何进行交互的知识要点1:面向对象设计关注我们的进度,在这里还记得“春晓”吧?设计1设计2设计3设计4设计5同样的需求,可以采取不同的设计方式

2、来完成。设计的好坏会影响系统的可重用性、可维护性和可扩展性。我们的进度,在这里知识要点2:设计原则“开-闭”原则里氏代换原则合成复用原则接口隔离原则依赖倒转原则迪米特法则知识要点2:设计原则课外阅读:《Java与模式》抽象,信息隐蔽,模块独立,高内聚,低耦合我们的进度,在这里设计模式就是实现了这些原则,从而达到了代码复用、增加可维护性的目的。理论在实际中的运用——设计模式提高代码复用提高可维护性按照良好的设计原则进行设计??使用设计模式我们的进度,在这里先看一下图书管理系统的登陆知识要点3:MVC设计模式登陆的状态图我们的进度,在这里验证通过验证未通过将用户

3、名和密码的验证,放在登录界面的“进入系统”按钮中进行。一种设计:我们的进度,在这里问题1:扩展性差。目前这个系统只有一个图书馆工作人员使用,因此用户名和密码都是admin,这样验证可行,但是如果以后维护期间,需要增加工作人员或者增加学生、教师等使用角色,系统的扩展性就受到了限制。问题2:重用性不好。并且不同的角色需要写入不同的验证过程,不能重用。问题3:界面人员还要考虑算法和逻辑。使界面变得不单一。如何解决?第一种设计存在的问题:新增加一个类UserLoginProcess,该类中有一个方法publicbooleanlogin_check(Stringuna

4、me,Stringupsw),此方法用来进行验证,如果验证通过则返回true给登录界面,否则返回false。另一种设计:用户验证处理类登录界面中,对用户验证处理类的使用1.良好的封装,将界面和验证逻辑分开,系统结构更清晰。界面人员不用管验证的细节,只需要判断返回值是true还是false即可作出相应的显示操作。2.UserLoginProcess类还可以提供其他验证操作,包括链接数据库的操作,为系统扩展性提供了接口。3.UserLoginProcess类中的验证过程可以被重用,即使你再增加若干个不同角色的登录界面,一样可以使用这个类的方法来进行验证,重用性提

5、高。第2种设计给我们带来什么好处?第2种设计使用了MVC思想MVC是Model,View,Controller的缩写。MVC是Application开发的设计模式,也就是大家所知道的Model2.在MVC的设计模式中,它包括三类对象:(1)模型(Model)对象:是应用程序的主体部分。(2)视图(View)对象:是应用程序中负责生成用户界面的部分。(3)控制器(Control)对象:是根据用户的输入,控制用户界面数据显示及更新Model对象状态的部分。即要求在Application开发中你把商业逻辑,界面显示,数据分离。MVC,将界面、处理、数据源分开我们的

6、进度,在这里MVC结构图状态查询通知改变视图选择用户请求状态改变我们的进度,在这里图书馆系统的MVC结构用户图形界面类数据源业务逻辑和处理类CVM我们的进度,在这里MVC让图书馆系统的结构变得清晰起来。 但与此同时,我们发现,在图书管理系统的用例中,有很多都是需要通过访问数据库来进行实现的。如果用户不使用原有的数据库了,使用新的数据库时,程序代码要改动的地方就太多了。怎么办? 有没有什么好的设计模式可以让数据库访问变的可重用,可维护,可扩展呢?使用DAO模式吧!?新的问题我们的进度,在这里知识要点4:DAO设计模式DAO是DataAccessObject的缩

7、写。数据访问:故名思义就是与数据库打交道。夹在业务逻辑与数据库资源中间。业务逻辑程序数据库DAO我们的进度,在这里DAO模式我们的进度,在这里DAO模式我们的进度,在这里1.封装DataSource(数据源)例如:Connectionconn=DriverMananger.getConnection()就可以把Driver,URL,username,passpword这一些放在DAO中。 如果在维护中,需要更改数据库的类型,例如把MSSQL换成Oracle的话,只需要更改DAO里面的getConnection()里面的Driver,URL即可。2.封装对数

8、据库的操作(例如最基本的增、删、改、查操作)例如:要

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。