• 每周必写


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

    内聚性和耦合性

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

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

    信息隐蔽

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

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

     

  • 相关阅读:
    [收藏] WAP网关应用
    关于Symbian编程的基础知识— 基本数据类型
    PDU短信的编码一般规则
    同级方法异步调用(2016.05.04更新)
    OpenStack Manila发展动态系列Austin峰会
    OpenStack Cinder发展动态系列Austin峰会
    OpenStack Neutron单网卡桥接模式访问外网
    每日一测3(结构和类的异同)
    每日一测2(关于构造函数)
    每日一测1(带命令行参数运行)
  • 原文地址:https://www.cnblogs.com/mybelieve/p/5590475.html
Copyright © 2020-2023  润新知