代码大全 第十章 读书笔记(1)

感觉《代码大全》这本书并不是第一次就能够全部读懂的,赶脚虽然程序写的蛮多,但是做为工程性的东西基本没有写过,所以,这本书应该需要读好几遍吧,每一次读完可能都会有一些新的想法,所以,标题用一个(1)表示第一次读某一章的一些想法。

第十章讲的内容是使用变量的一般事项,主要是从可读性和出错概率来谈变量的初始化、赋值以及一些使用方法。

1.声明变量:隐式变量是很危险的,即没有定义可以直接用的变量,可惜c++java不允许这种情况出现。

2.变量的初始化:在声明变量的时候初始化(习惯纯C风格的特别注意!)

例如
int accountIndex=0;
//code using accoutIndex
...
int total=0;
//code using total
...
int done=0;
//code using done
...

在用到变量的时候才定义,以免在真正用到该变量之前误使用了,而且代码会更加清楚。

即:就近原则(Principle of Proximity)

3.使用finalconst,防止误赋值。

4.关于变量的跨度,变量跨度即为相邻两次使用该变量中间相隔的代码行数的平均值,降低变量跨度可以防止阅读程序的人的关注点跳来跳去,降低程序的可读性。

5.缩短变量的存活时间,变量的存活时间即为声明他到最后一次使用他之间的语句数,所以,声明变量的时候尽量接近于第一次使用他的地方,有利于提高代码的可读性和重构的方便性。

6.关于在变量存活时间后误用该变量的预防方法:在不用该变量的时候可以给他们赋上一个奇葩的数值,或者检查使用位置与初始位置是不是远的出奇。

7.关于在程序中使用常量。

例如

int maxn=10;

const MAXN=10;
int maxn=MAXN;

显然,第二种方法的可维护性好一些。

8.以前有时候懒得声明变量,就把一些没有用的变量抓起来继续用,其实这是很容易造成混乱的。

9.不要让代码具有隐含的意思,例如,变量account取值在大于0的时候表示意思A,在取值小于0的时候表示意思B,或者当取值大于等于0的时候表示某事物的数目,而当他等于-1时表示有异常,这种不利于阅读者进行阅读。

10.注意warning!里面可能包含了一些没有检查出来的逻辑错误。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值