菜鸟也能飞:SQL数据库实战专业教程(三)

发表于:2012-6-04 10:12

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:yangyuankp    来源:51Testing软件测试网采编

  六、概要设计

  数据库分析完了,基础已经搞定,接下来就是对程序的初步设计。如何设计呢?如果是小程序,用脑子想想,也就算设计完了,但是如果是稍微复杂点的系统,恐怕就不行了。概要设计还是要借助于UML图,现在你知道它有多重要了吧?我们先来设计程序的大致结构,可以用UML的包图。作为专业水准的菜鸟,我们要用三层架构来设计程序。所谓三层架构,就是把程序分为基本的三层,分别为:UI层(用户界面层)、BLL层(业务逻辑层)、DAL层(数据访问层)。把程序分成三层,好处不言而喻,从此你就再也见不到所有东西都在一个窗体里混乱的情形,如果什么地方需要修改,再也不用去改动整个工程。每一层都有各自的功能,从UI层到DAL层,它们是向下依赖的。其中,UI层只负责显示界面,不应该有逻辑(有效性验证的逻辑还是可以有的),所有的功能都是通过调用BLL层完成;BLL层负责程序的所有逻辑组织,它通过调用DAL层完成复杂的操作,然后提供一个简洁的接口让UI层调用,相当于一个大外观层,BLL层的类,可以按照窗体写,也就是说每一个窗体对应一个BLL层的类,类的各种方法完成窗体的所有功能;DAL层负责访问数据库,数据库中每一个表,在DAL层中都有一个与之对应的操作类,通过该操作类,可以实现对对应表的一切操作。前边提到的实体类,就是为三层架构服务的,三层之间一般都是通过实体类传递数据,这样简洁、方便,实体类就相当于一个容器。注意,还有一个层,也可以不单独作为一个层的DBHelper,这个部分负责最低级的与数据库交互代码,比如连接数据库、插入数据、查询数据等等,把这些最基本的代码提炼到一个单独的层中有利于代码的复用,使程序更加精炼。欲知其他知识,请轻点google,我说到此为止。献上一张三层架构的示意图:

  再来一个数据库、DAL操作类、实体类的关系,这个有点乱,刚开始不好理解,多想想就知道啦:

  有了上边的分析,我们就可以用Rational Rose画程序包图了,提一个小技巧,Rose的包理论上应该在包图里画,但是那样没法画类,所以还是建议在类图里画包,用包把类图分成几个大部分,然后在每个部分里画特定的类,这样双击包直接就可以看到该包中的类了。根据三层架构,我们可以画出下边的包图:

  整体架构就是这样了,接下来就搞定每个包里都有什么类。

31/3123>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号