首页 > 代码库 > 构建之法第四章

构建之法第四章

本周学习的是《构建之法》的第四章,这章的主题是两人合作,看到这个题目我的第一反应是现在两人合作的项目还很多吗?因为我一直认为一个项目一般是几个人或是十几个人这样的团队来合作完成的,这个思想也不知道是看到了什么有的。值得一提的是,书中的第五章就是讲团队合作的。

合作的最小单位是两个人,合作过程中必然存在着个人看法,比如一个人看另一个人的代码时就不一定同意其看法了,每个人心中对于好代码的定义也不尽相同,这时候就很有必要给出一个基准线--什么是好的代码规范和设计规范。

代码规范分为代码风格规范和代码设计规范。

先说说代码风格规范吧。书中的观点是简明,易读,无二义性。书中从缩进,行宽,括号,断行与空白的{}行,分行,命名,下划线,大小写,注释这几个方面着手介绍代码风格规范。其实不少在我们学习的过程中都是遇到的,就看自己有没有注意这些规范的运用罢了。在断行中作者一开始举的例子是为了层层递进最好的,其实我也就认同最后那种,毕竟那种也是比较直观好看吧。对于命名的说法,其实我也是比较苦恼的,因为自身英文不是很好,所以想用英文来命名还得百度,中文的自然不好,所以就显得比较麻烦了,唉,看来以后还是要好好学英语的,何况现在还有专业英语呢,

接下来说说代码设计规范吧。代码设计规范比代码风格规范的理解层面要高一些的。代码设计规范不仅是程序书写的格式文体,而且牵涉到程序设计,模块之间的关系,设计模式等方方面面。函数是我们写程序基本都会用到的,书中的观点就是:只做一件事,并且要做好。Goto是为了使函数有单一的出口。错误处理我觉得是每个写程序的人都会遇到的,不存在没有出现错误的代码。错误处理看似需要很少的时间来解决,最后其实往往需要全部项目80%的时间。断言是用来验证代码的正确性。然后书中关于类的讨论,大部分在学习C++或是JAVA的时候都有学习过了。我比较生疏或者说接触不多的是new和delete。如果可能,实现自己的new和delete,这样可以方便的加上自己跟踪和管理机制。自己的new和delete可以包装系统提供的new和delete;检查new的返回值,new不一定都成功;释放指针时不用检查NULL。然后对于异常处理,我的运用还是不够的还需要多加学习,当试用异常时,要注意在什么地方清理数据,异常不是万能的。

代码复审。代码复审并不是把自己写好的代码给别人看就行了。代码复审的正确定义:看代码是否在“代码规范”的框架内正确解决了问题。代码复审的形式包括自我复审,同伴复审,团队复审。其中最基本的复审手段,就是同伴复审。代码复审简单点来说就是找出编译器检查不出来的bug,比如逻辑上的,算法上的等等。还有一点就是互相教育开发人员,传授经验。代码复审的最终目的是为了让代码能够更好地实现,更好地满足客户的需求,复审并不是为了针对开发者来找bug的。

构建之法第四章