【代码大全】第7章 高质量的子程序
来源:互联网 发布:叮当软件制作组件 编辑:程序博客网 时间:2024/04/30 04:19
第7章 高质量的子程序
创建子程序的理由:降低复杂度,引入中间、易懂的抽象,避免代码重复,支持子类化,隐藏顺序,隐藏指针操作,提高可移植性,简化复杂的布尔判断,改善性能,隔离复杂度,隐藏实现细节,限制变化所带来的影响,隐藏全局数据,形成中央控制点,促成可重用的代码,达到重构目的。
内聚性:功能内聚(一个子程序只执行一项操作),顺序上的内聚性(子程序包含有需要按特定顺序执行的操作,操作要共享数据),通信上的内聚性,临时的内聚性,过程上的内聚性,逻辑上的内聚性,巧合的内聚性。
好的子程序的名字:描述要做的事情,避免使用无意义的、模糊不清的动词,不要仅通过数字来形成不同的子程序的名字,根据需要确定名字长度,对返回值有所描述,给过程起名用语气强烈的动词加宾语,准确使用对仗,为常用操作确立命名规则
子程序最好50~150行代码,复杂的算法可以是100~200行。
使用子程序参数的原则:按照输入-修改-输出的顺序排列,考虑自己创建in和out关键字,如果几个程序都用了类似的一些参数,应该让这些参数的排列一致,使用到所有的参数,把状态或出错变量放在最后,不要把子程序的参数用作工作变量,在接口中对参数的假定予以说明,参数限制在7个以内,考虑对参数采用某种输入、修改、输出的命名规则,为子程序传用以维护其接口抽象的变量或对象,使用具名变量,确保实参和形参匹配。
函数与过程的区别主要是语义的区别,而不是语法的区别。如果一子程序的主要用途就是返回指定的返回值,那就用函数,否则就用过程。
设置函数的返回值:检查所有可能的返回路径,不要返回局部数据的引用或指针。
宏子程序和内联子程序:吧宏表达式整个包含在括号里,宏的命名遵从子程序,尽量少用内联,它违反了封装原则。
- 【代码大全】第7章 高质量的子程序
- 读《代码大全》第2版,第 7 章高质量的子程序
- 《代码大全学习笔记》 第七章,高质量的子程序
- 高质量子程序的特点 (代码大全 第五章)
- 《代码大全》 第四章-五张读书笔记 建立子程序的步骤,高质量子程序的特点
- 《代码大全2》之---高质量的子程序设计
- 读《代码大全2》笔记:高质量的子程序
- 读书笔记_代码大全2第七章_高质量的子程序
- 代码大全第二版读书笔记 第二部分-创建高质量的代码 七、高质量的子程序
- 高质量子程序核查表(代码大全2)
- 《代码大全》学习笔记(5):高质量子程序特点
- 高质量的子程序
- 高质量的子程序
- 高质量的子程序
- 高质量的子程序
- 高质量的子程序
- 高质量的子程序
- 高质量的子程序
- 【代码大全】第3章 三思而后行:前期准备
- 【代码大全】第4章 关键的“构建“决策
- Servlet3.0中HttpServletRequest增加了对文件上传的支持
- 【代码大全】第5章 软件构建中的设计
- 【代码大全】第6章 可以工作的类
- 【代码大全】第7章 高质量的子程序
- 常用排序算法--堆排序
- 析构函数 设置为虚函数
- 【代码大全】第8章 防御式编程
- oracle中merge的用法
- 【代码大全】第9章 伪代码变成过程
- 【代码大全】第10章 使用变量的一般事项
- Servlet3.0提供异步处理
- 姚老板归来