浅谈计算机信息隐蔽性设计网络毕业论文(2)
2013-04-30 18:25
导读:2)由于简化了编程难度,避免了重复劳动,降低了对程序员技术经验水平的要求,减少了设计说明和理解交流及编辑的工作量,因而利于减少开发成本。
2)由于简化了编程难度,避免了重复劳动,降低了对程序员技术经验水平的要求,减少了设计说明和理解交流及编辑的工作量,因而利于减少开发成本。
倘若前述的软件设计不是采用信息隐蔽性设计,倘若我们只有对复杂的库表结构了如指掌之后才能进行多层交叉组合查询程序的实现,这不仅将需要许多时间理解库表结构,还需要构筑同样的数据库,录入能体现复杂数据关系的各种测试数据。由于数据关系映射着应用对象的关系,为此我们还必须了解满足各种组合查询的数据与应用业务处理间的对应关系,因为稍有理解偏差,取出的用于统计的数据就会全面失去意义。所以信息隐蔽性设计对于大型软件开发,特别是分式的异地开发,是不可或缺的。
实际上,前述软件设计提供给我们的是与复杂数据库结构封装在一起的组合查询存储过程,只是一个桩程序。在我们开发客户端组合查询程序时,它完全是个黑盒子,甚至没有放到服务器端。但是,它使得组合查询程序只剩下输入数据检验这一单纯功能了。
3 信息隐蔽性设计的基本思路与实践
信息隐蔽是个原则而不是方法,按此原则设计的系统具有信息隐蔽性,这是设计优化的一种表现。结构化方法和面向对象方法都追求信息隐蔽性,并且各自具有一套抽象与实现的思路与方法。在此,我们尝试归纳一下不拘泥于方法学的有关设计思路与方法。
3.1 哪些场合应考虑隐蔽性设计
总的来说,凡是可以用信息隐蔽性设计、使复杂问题简单化的场合,都应该采用此设计。
首先,可以对共同事件、共同处理采用隐蔽性设计。因为重复是问题复杂化的一个重要原因。例如“输入数据检验”、“退出事件”、“打开事件”、“打印处理”、“热键的转移控制”、“系统信息输出处理”等,甚至对打印报表的“制表时间与页号编辑”功能的共同处理。
(科教范文网http://fw.nseac.com)
其次,可以对接口和环境采用隐蔽性设计。因为接口也是问题复杂化的重要原因之一。例如,可将静态数据库表及其查询操作隐蔽起来,将复杂关系表及其存取操作隐蔽起来,甚至可以将所有数据库都隐蔽起来,使低级开发人员根本不必意识数据库的存在,以及将特殊输入输出装置接口处理隐蔽起来,将与其他系统的接口处理隐蔽起来等。
此外,还可以把复杂的算法、概念隐蔽起来,也可以把用户没有权限的功能隐蔽起来,以保证数据的安全性。
3.2 信息隐蔽的实现方法 .
我们可以把实现信息隐蔽的
物理范围称为隐蔽黑盒。信息隐蔽实现方法实际上就是隐蔽黑盒的实现方法与调用方法。隐蔽黑盒一般可以用函数、存储过程、超类对象、语句系列来实现。使用隐蔽黑盒时,可以用函数、存储过程调用、祖先继承及程序段复制等相应办法来引用。
3.2.1 服务器端的隐蔽黑盒设计技术
我们使用触发器来实现对一些数据库超类表(如流水号表)或共同表操作(如表头信息写操作)的盒化。触发器是通过将实现方法与调用方法封装在一起,把调用方法也隐蔽起来,是最彻底的隐蔽黑盒。这除了使复杂问题简单化以外,还有利于数据库的安全。因为再严密的客户端操作也无法完全排除网络带来的不安全因素的影响。而随着网络支持性价比的提高,把数据库相关操作集中在服务器端,客户端只负责输入数据的正确性检查和结果数据的处理,这显然是一种既讲效率又能保证数据库数据安全体系结构的方法,是“胖服务器瘦客户机”发展方向的必然取舍。
3.2.2 静态表的隐蔽黑盒设计
从信息隐蔽的角度看程序中分离出去的静态表,对程序来说也是一个隐蔽黑盒,它实现了程序中存在变因的控制数据或开关数据对程序的隐蔽(隔离)。静态表放在服务器端,便于共享和维护。同时,我们用逻辑控制静态表解决了面向不同应用对象动态组合应用功能这个难题,把没有权限的那一部分功能对用户隐蔽了起来。
(科教范文网 fw.nseac.com整理)
总之,隐藏黑盒就是重用单元,重用单元越多软件开发越简单,与数据库有关的隐蔽黑盒放在服务器端要比放在客户端好处更多,因此隐藏黑盒有着广阔的重用前景。
参考文献
[1] 沈美明,温冬婵.IBM-PC汇编语言程序设计(第二版)[M].北京:清华
大学出版社,2001.9.
[2] 张世和.数据结构[M].北京:
清华大学出版社,2000.12.
[3] 叶忠杰.计算机网络安全技术(第二版)[M].北京:科学出版社。2004.9.