码迷,mamicode.com
首页 > 其他好文 > 详细

每周必写

时间:2016-06-16 13:08:37      阅读:134      评论:0      收藏:0      [点我收藏+]

标签:

这周没有上课,阅读了《代码大全》第六章模块化设计

内聚性和耦合性

模块化设计的目标是使每个子程序都成为一个“黑盒子”,你知道进入盒子和从盒子里出来 的是什么,却不知道里边发生什么。它的接口非常简单,功能明确,对任何一个特定的输入, 你都可以精确地预测它相应的输出结果。

从所有模块中的子程序可以对它进行存取的角度来说,模块中数据很像是全局数据。但从不是程序中所有的子程序都可以对它进行存取的角度来说,它又不像是全局数据,它只对模块 中的子程序来说,才是可以存取的。因此,在模块设计中的最重要决定之一,便是决定哪个子程序需要对模块中数据进行直接存取。

信息隐蔽

在设计模块时,一项重要任务就是决定哪些特性应该是对模块外部公开的,哪些应该是作 为秘密隐藏起来的,一个模块中可能使用25个子程序而只暴露出其中的5个,其余20个都只 在内部使用。模块中也可能用到了几个数据结构,但却把它们全部隐藏起来。它可能会也可能 不会提供把数据结构信息通知给程序其余部分的子程序。模块设计的这一方面一般被称作“可见性”,因为它主要涉及了模块的功能特性是否是对外部分开或暴露的。

通过阅读这章知道创建模块的原因有许多是与创建子程序相同的。但模块概念的意义要比子程序深远得多,因为它可以提供一整套而不是单独一个功能,因此,它是比子程序更高层次的设计工具。

 

每周必写

标签:

原文地址:http://www.cnblogs.com/mybelieve/p/5590475.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!