• 构建之法阅读笔记03


    第4章 两人合作

    4.1 代码规范

    计算机只关心编译生成的机器码,你的程序采用哪种缩进风格,变量名有无统一规范等,与机器码的执行无关。但是,做一个有商业价值的项目,或者在团队里工作,代码规范相当重要。

    “代码规范”可以分成两部分:

             1.代码风格规范。主要是文字上的规定,看似表面文章,实际上非常重要。

             2.代码设计规范。牵涉到程序设计、模块之间的关系、设计模式等方方面面的通则。

    4.2 代码风格规范

    代码风格的原则是:简明,易读,无二义性。

    4.2.1 缩进

    最好用4个空格。

    4.2.2 行宽

    行宽必须限制,可以限定为100字符。

    4.2.3 括号

    在复杂的条件表达式中,用括号清除地表示逻辑优先级。

    4.2.4 断行与空白的{}行

    这里作者推荐每个“{”和“}”都独占一行。

    在这里,我还是采用Linux中的风格,除了函数和类。

    if ( condition ) {

       DoSomething();

    } else {

    DoSomethingElse();

    }

    4.2.5 分行

    不要把多条语句放在一行上。并且,不要把多个变量定义在一行上。

    4.2.6 命名

    详见下面大小写。

    4.2.7 下划线

    一般不用。

    4.2.8 大小写

    Pascal —— 所有单词的第一个字母都大写。

    Camel —— 第一个单词全部小写,随后单词随Pascal形式。

    所有的类型/类/函数名都用Pascal形式,所有的变量都用Camel形式。

    函数中get/set中例外。

    4.2.9 注释

    不要注释程序是怎么工作的(How),程序本身就应该能说明这一问题。

    注释是为了解释程序做什么(What),为什么这样做(Why),以及要特别注意的地方。

    复杂的注释应该放在函数头,很多函数头的注释都用来解释参数的类型等,如果程序正文已经能够说明参数的类型in/out,就不要重复!

    注释要随着程序的修改而不断更新,一个误导(Misleading)注释往往比没有注释更糟糕。

    4.3 代码设计规范

    代码设计规范不光是程序书写的格式问题,而且牵涉到程序设计、模块之间的关系、设计模式等方方面面。

    4.3.1 函数

    现代程序设计语言中的绝大部分功能,都在程序的函数(Function、Method)中实现。关于函数,最重要的原则是:只做一件事,并且要做好。

    4.3.2 goto

    函数最好有单一的出口,为了达到这一目的,可以使用goto。只要有助于程序逻辑的清晰体现,什么方法都可以使用,包括goto。

    4.3.3 错误处理

    当程序的主要功能实现后,一些程序员会乐观地估计只需要另外20%的时间,给代码加一些错误处理就大功告成了,但是这20%的工作往往需要全部项目80%的时间。

    1. 参数处理

    在Debug版本中,所有的参数都要验证其正确性。在正式版本中,对从外部(用户或别的模块)传递过来的参数,要验证其正确性。

    2. 断言

    如何验证正确性?那就要用断言(Assert)。

    当你觉得某事肯定如何时,就可以用断言。

    如果你认为某事可能会发生,这时就要写代码来处理可能发生的错误情况。

  • 相关阅读:
    c语言写入开机启动项的时候,RegSetValueEx的返回值为0,但是发现注册表中没有设置的属性
    返回引用类型的函数指针(c++)
    c++的数据类型的引用(三种方式有一些区别)
    python中open函数在遇到中文路径的解决方法
    Java——流程控制语句——switch case 语句
    java——变量
    Java——数据类型转换:自动类型转换&强制类型转换
    java——循环控制语句——for——while——do……while——整理03
    java——循环控制语句——for——while——do……while——整理01
    java——运算符
  • 原文地址:https://www.cnblogs.com/cj-125/p/8301818.html
Copyright © 2020-2023  润新知