2009-02-08读书记录——《代码大全》(第一版)第五章——高质量子程序特点
2009-02-08 17:34
375 查看
在前一章中了解了有关子程序建立的步骤,但却没交待如果写出高质量的子程序,以及什么样的子程序才算是高质量的子程序。看了此章的标题就明白,在这一章中便会以子程序本知作为重要讲解了。
什么是子程序?子程序是具有单一功能的可调用函数或过程。
本章开头没有交待什么才算是一个高质量的子程序,而是用一个低劣的子程序来说明什么样才不算是高质量的子程序。低劣的子程序包括:
程序名让人困惑
程序没有说明
子程序的而局不好
作为输入变量,值不应该变化
进行了全局变量读写操作
功能不单一
没有采取预防非法数据的措施
使用了常数
部分参数没有被使用
参数过多
从这几点中可以知道什么样算是低劣的子程序了,那么反过来就一定算是高质量的子程序吗?带着疑问继续往下看。
自己摘录一些好的句子:
使用子程序的首要原因是为了降低程序的复杂性,另外一个原因是昼减小代码的篇幅
要把最可能改动的区域设计成最容易改动的区域
最可能被改动的区域包括:硬件依赖部分、输入输出部分、复杂的数据结构和商务原则
想改进一个子程序,最好把将要改动的那部分放进子程序中,将其独立
编写子程序的最大的心理障碍是不情愿为了一个简单的目的去编写一个简单的子程序
对于过程的名字,可以用一个较强的动词带目标(动宾词组)的形式
变量名称最佳长度是9到15个字母、子程序名称一般15到20个字母
应该把一个子程序的参数限制在七个左右
内聚性
这部分理解的不够透彻,做个记录,回头再再一遍。
内聚性是指一个子程序内部各部分之间的联系程度
耦合性
耦合是批子程序之间的联系程度
耦合规模是指两个子程序之间联系数量的多少
内容耦合(一个子程序使用了另外一个子程序中的代码,或者它改变了其中的局部变量)是不被接受的
创建子程序的理由总结:
降低复杂性
避免重复代码段
限制改动带来的影响
隐含顺序
改进性能
进行集中控件
隐含数据结构
隐含指针操作
隐含全局变量
促进重新使用代码段
计划开发一个软件族
改善某一代码的可读性
改善可移植性
分隔复杂操作
独立非标准语言函数的使用
简化复杂的布尔测试
什么是子程序?子程序是具有单一功能的可调用函数或过程。
本章开头没有交待什么才算是一个高质量的子程序,而是用一个低劣的子程序来说明什么样才不算是高质量的子程序。低劣的子程序包括:
程序名让人困惑
程序没有说明
子程序的而局不好
作为输入变量,值不应该变化
进行了全局变量读写操作
功能不单一
没有采取预防非法数据的措施
使用了常数
部分参数没有被使用
参数过多
从这几点中可以知道什么样算是低劣的子程序了,那么反过来就一定算是高质量的子程序吗?带着疑问继续往下看。
自己摘录一些好的句子:
使用子程序的首要原因是为了降低程序的复杂性,另外一个原因是昼减小代码的篇幅
要把最可能改动的区域设计成最容易改动的区域
最可能被改动的区域包括:硬件依赖部分、输入输出部分、复杂的数据结构和商务原则
想改进一个子程序,最好把将要改动的那部分放进子程序中,将其独立
编写子程序的最大的心理障碍是不情愿为了一个简单的目的去编写一个简单的子程序
对于过程的名字,可以用一个较强的动词带目标(动宾词组)的形式
变量名称最佳长度是9到15个字母、子程序名称一般15到20个字母
应该把一个子程序的参数限制在七个左右
内聚性
这部分理解的不够透彻,做个记录,回头再再一遍。
内聚性是指一个子程序内部各部分之间的联系程度
耦合性
耦合是批子程序之间的联系程度
耦合规模是指两个子程序之间联系数量的多少
内容耦合(一个子程序使用了另外一个子程序中的代码,或者它改变了其中的局部变量)是不被接受的
创建子程序的理由总结:
降低复杂性
避免重复代码段
限制改动带来的影响
隐含顺序
改进性能
进行集中控件
隐含数据结构
隐含指针操作
隐含全局变量
促进重新使用代码段
计划开发一个软件族
改善某一代码的可读性
改善可移植性
分隔复杂操作
独立非标准语言函数的使用
简化复杂的布尔测试
相关文章推荐
- 2009-02-06读书记录——《代码大全》(第一版)第四章——建立子程序的步骤
- 2009-02-24读书记录:《代码大全》(第一版)第二十六章——调试
- 2009-02-18读书记录:《代码大全》(第一版)第十七章——常见的控制结构
- 2009-02-21读书记录:《代码大全》(第一版)第二十章——编程工具
- 2009-02-12读书记录——《代码大全》(第一版)第七章——高级结构设计
- 2009-03-02读书记录:《代码大全》(第一版)第二十九章——代码调试技术
- 2009-02-21读书记录:《代码大全》(第一版)第二十一章——项目大小如何影响创建
- 2009-02-09读书记录——《代码大全》(第一版)第六章——模块化设计
- 2009-02-12读书记录:《代码大全》(第一版)第八章——生成数据
- 《代码大全》学习笔记(5):高质量子程序特点
- 2009-02-23读书记录:《代码大全》(第一版)第二十五章——单元测试
- 2009-03-03读书记录:《代码大全》(第一版)第三十一章——个人性格
- 2009-02-17读书记录:《代码大全》(第一版)第十四章——条件语句
- 2009-02-19读书记录:《代码大全》(第一版)第十八章——布局和风格
- 2009-02-22读书记录:《代码大全》(第一版)第二十二章——创建管理
- 2009-02-23读书记录:《代码大全》(第一版)第二十四章——评审
- 2009-02-04读书记录——《代码大全》(第一版)第一、二章——欢迎进入软件创建世界
- 2009-02-16读书记录:《代码大全》(第一版)第十二章——复杂数据类型*
- 2009-02-22读书记录:《代码大全》(第一版)第二十三章——软件质量概述
- 2009-03-01读书记录:《代码大全》(第一版)第二十七章——系统集成