变量的定义是很简单的任务,但它的确占去了我们很多时间
一、变量初始化原则
不合理的初始化数据是产生编程错误的根源之一
1.从未对变量赋值,它的值只是程序启动时变量所处内存区域的值-Debug会置特殊值以便调试,但release不会
2.变量值已经过期
3.变量的一部分被赋值,另一部分没有
避免初始化错误的建议:
1.在声明变量的时候初始化
2.在靠近变量第一次使用的位置初始化它
3.理想情况下,在靠近第一次使用变量的位置声明和定义该变量-这种代码风格不是很好,一般都习惯先定义后使用
4.在可能的情况下使用final或者const-Java final ,C++ const
5.特别注意计数器和累加器-i、j、k等下一次使用前要注意重置其值
6.在类的构造函数初始化该类数据成员
...
二、作用域
作用域可以看做衡量变量知名度的方法-它名气有多大?
使用作用域的规则:
1.使变量引用局部化-即把变量的引用集中起来
2.尽可能缩短变量的“存活”时间-该死的时候就别活着
3....
减小作用域的一般原则
1.在循环开始之前再去初始化该循环里使用的变量,而不是在子程序开始处初始化
2.直到变量即将被使用时再为其赋值
3.把相关语句放到一起
4.把相关语句组提取成单独的子程序
5.开始时使用最严格的可见性,然后根据需要扩展变量的作用域
三、持续性
...
四、绑定时间
主要是硬编码、具名常量、以及通过函数调用返回等:1.编码时-使用神秘数值2.编译时-使用具名常量3.加载时-从windows注册表、java属性文件等外部数据源读取4.对象实例化时5.即时-每次窗体重绘时读取一般而言,绑定时间越早灵活性越差,但复杂度也会越低。
五、为变量指定单一用途
六、选择好变量名的注意事项
1.最重要的命名注意事项:该名字要完全、准确的描述出该变量所代表的事物。-但注意不要过长
2.以问题为导向,一个好的名字通常表达的是“what”而不是“how”
3.最适当的名字长度:平均长度在10-16字符之间或8-20之间也可-确保足够清晰即可,这不是公理
...