❖ | 部分内容摘自: Office中国 出品的 《专家门诊:Access开发答疑200问》一书中的 第16章 Access开发规范 |
出版日期 2005年 作者:王宇虹 熊靖 李宏亮
❖ | 部分内容摘自: Office中国 出品的《Access数据库系统开发从基础到实践》一书的 附注内容 |
出版日期 2006年 作者:王宇虹 朱亦文 陈格 朱彦志
|
Access 编程风格:
|
对作家而言,文章可以看出他的一生,文如其人就是此说,而对于程序员来说,码如其人,代码的风格多多少少也折射出一个程序员的性格和处事的方式,好的代码让人如饮甘醇,久久回味,差的代码让人初见无味,久而生厌。
模仿一句名言:不值得读两遍的程序,连一遍也不值得读。
|
基本要求:
|
1. | 程序很多时间不是给程序员看的,是给不懂程序的人看的。 |
2. | 在编程之前,得设想你的程序是给那些不懂程序的人看的,这样设身处地想一想,也许你就会更多地注意程序的文档和注释。事实上,程序很多时候的确是给他们看的。 |
3. | 不要太相信自己的编程能力, 程序尽量写得简单易懂, 太长的程序尽量分成多个子程序或函数, 使程序结构清晰, 方便自已阅读也方便别人阅读, 一般来说,单个函数的程序行数不得超过50行。 |
4. | 对核心程序尽量优化代码, 不同的语法可能适合不同的情况, 但同时需要考虑代码的易读性, 我的建议是要尽量两者兼顾. |
5. | 尽量先使用ACCESS本身提供的内部函数, 实在不行, 才定义自己的子程序和公共函数。 |
|
可读性要求:
|
1. | 正确性第一, 可读性第二,效率第三。首先要保证程序是准确的, 算出的结果是对的, 然后再考虑程序的可读性, 它关系到你以后维护程序的难度和维护的时间. 最后再在前二者的基础上再做代码上的优化. |
2. | 不需要对所有代码都做注释, 过份的注释会加重系统的负担, 且间接增加阅读的困难, 特别是垃圾注释, 对显而易见的程序不必做过多的说明, 否则阅读者会感觉你在轻视他. 或觉得你写得太累赘, 浪费他的时间. 但对核心部分或关键算法以及程序的难点需要有详细的注释. 好的程序注释如同无处不在的挚友, 在你正需要帮助的时候才出现, 而不是整天唠唠叨叨或婆婆妈妈的保姆, 让你心烦. 另外需注意注释不是一次性的工作, 它需要经常更新, 保证代码与注释完全一致, 不一致的注释会将读者引入歧途. |
3. | 每个模块或类模块,都应有模块头说明,说明详细规格见规范。 |
5. | 主要变量(结构、联合、类或对象)定义或引用时,注释能反映其含义。 |
8. | 利用缩进来显示程序的逻辑结构,缩进量一致并以Tab键为单位,定义Tab为 6个字节。 |
13. | 注释的作用范围可以为:定义、引用、条件分支以及一段代码。 |
14. | 注释行数(不包括程序头和函数头说明部份)应占总行数的 1/5 到 1/3 。 |
|
结构化要求:
|
3. | 用 IF 语句来强调只执行两组语句中的一组。禁止 ELSE GOTO 和 ELSE RETURN。 |
|
正确性与容错性要求:
|
2. | 无法证明你的程序没有错误,因此在编写完一段程序后,应先回头检查。 |
3. | 改一个错误时可能产生新的错误,因此在修改前首先考虑对其它程序的影响。 |
6. | 不要比较浮点数的相等,如: 10.0 * 0.1 == 1.0 , 不可靠 |
7. | 程序与环境或状态发生关系时,必须主动去处理发生的意外事件,如文件能否逻辑锁定、打印机是否联机等。 |
8. | 单元测试也是编程的一部份,提交联调测试的程序必须通过单元测试。 |
|
可重用性要求:
|
1. | 重复使用的完成相对独立功能的算法或代码应抽象为公共控件或类。 |
2. | 公共控件或类应考虑OO思想,减少外界联系,考虑独立性或封装性。 |
|
其它要求:
|
1. | 采用各层次缩进的风格,每层缩进一个TAB长度,这样使程序更加清晰和易于阅读,特别在嵌套很多的代码中,这种风格更易于阅读及更易于跟踪维护。 |
2. | 变量必须先定义再使用,不能隐性定义变量,避免带来一些不必要的隐性错误。 |
3. | 使用模块、类模块和COM来使程序封装得更好,并使程序更易于重用和更易于移植。 |
5. | 不要随意定义全局变量,尽量使用局部变量,以免占用过多的内存资源。 |
6. | 在容易引起二义性的表达式中,请使用括号以避免歧义。 |