编写可读性代码的艺术(一)
来源:互联网 发布:惠普手机打印软件 编辑:程序博客网 时间:2024/05/17 20:45
1.代码应该易于理解
第一部分 表面层次的改进
1.把信息装在名字里
a.找到更有表现力的词
b.避免像tmp和retval这样泛泛的名字
tmp这个名字只应用于短期存在切临时性位其主要存在因素的变量。
c.用具体的名字代替抽象的名字
d.为名字附带更多信息
如带单位的值
附带其他重要信息:
但你不应该给程序中每个变量都加上像unescaped_或者_utf8这样的属性。如果鱼人误解了这个变量就很容易产生缺陷,尤其是会产生像安全缺陷这样的可怕的后果,在这些地方这种技巧最无用武之地。基本上,如果这是一个需要理解的关键信息,那就把它放在名字里。
你可以把这称为“英语表示法”,病不同于一种更正式和严格的系统(关注与特有的一系列属性)的匈牙利命名法。
e名字应该有多长
在小的作用域里可以使用短的名字,因为所有的信息(变量的类型、它的初值、如何够析等)都很容易看到,所以可以用很短的名字。因此如果一个标识符有较大的作用域,那么它的名字就要包含足够的信息以便含义更清楚。
首字母缩略词和缩写(经验原则是团队的新陈管是否能理解这个名字的含义)
丢掉没用的词(有时名字中的某些单词可以拿掉而不会损失任何信息)
f.利用名字的格式来传递含义
对不同的实体使用不同的格式就像语法高亮显示的形式一样,能帮助你更容易的阅读代码。
当调用jQuery函数库时(它的名字是单个字符$),一条非常有用的规范是,给jQuery返回的结果也加上$作为前缀该例子中的大部分格式都很常见,使用CamelCase来表示类名,使用lower_separated来表示变量名
例如,常量的格式的KConstantName而不是CONSTANT_NAME。这种形式的好处是容易和#define的宏区分开,宏的规范是MACRO_NAME。
类成员变量和普通变量一样,但必须以一条下划线结尾,如offset_。刚开始看,可能会觉得这个规范有点怪,但是能立刻区分出是成员变量还是其他变量。
如:stats.clear();
如果使用了member_这个规范,你技能迅速得到结论:"不,stats一定是个局部变量。否则它就会命名为stats_."
其他格式规范:
根据项目上下文活语言的不同,还可以采用其他一些格式规范是的名字包含更多信息。例如"构造函数"(在新建时会调用的函数)应该首字母大写二普通函数首字母应该小写。
这次是HTML/CSS:当给一个HTML标记加id或者class属性时,下划线和连字符都是合法的值。一个可能的规范是用下划线来分开ID中的单词,用连字符来分开class中的单词。
是否要采用这些规范是由你和你的团队决定的。但不论你用哪个系统,在你的项目中要保持一致。
0 0
- 编写可读性代码的艺术(一)
- 编写可读性代码的艺术(二)
- 编写可读性代码的艺术(四)
- 编写可读性代码的艺术
- 编写可读性代码的艺术
- 《编写可读性代码的艺术》读书笔记 第四部分 精选话题
- 《编写可读性代码的艺术》读书笔记 第三部分 重新组织代码
- 《编写可读性代码的艺术》读书笔记 第一部分 表面层次的改进
- 《编写可读性代码的艺术》读书笔记 第二部分 简化循环和逻辑
- 《编写可读代码的艺术》读书笔记(一)
- 编写可读代码的艺术(一)java&android
- 《编写可阅读代码的艺术》读书笔记(一)
- 编写可读代码的艺术 读后感(一)
- 如何编写可读性好的代码
- 编写代码的艺术
- 编写可读代码的艺术 (1)
- 编写可读代码的艺术 (2)
- 编写可读代码的艺术 (3)
- armeabi与armeabi-v7a的区别,绝对干货!
- 【Android】Android清除本地数据缓存代码
- 神经网络深入 ,源码
- DBoW2算法原理介绍
- tensor理解
- 编写可读性代码的艺术(一)
- Linux系统--进程地址空间之存储器区域
- 死锁
- tensorflow学习笔记十六:tensorflow官方文档学习 Mandelbrot Set
- linux调试工具
- 继承关系下的构造器风云
- apk测试工具调研
- 安卓复制粘帖
- 在vmware中实现Ubuntu与win7(主机)之间同步实现共享文件