[b]为什么我们需要有质量的代码?[/b]
敏捷开发方法是用来应付那些要求代码做大量改动的反馈信息的方法。
如果程序没有用一种好的表达方式来表现,那程序会很难读,难维护,难修改。
[b]什么是代码异味?[/b]
代码异味是一种由写的很差的代码引起的一种有臭味的感觉,
异味更多的是来自一种直觉,而不是一种有据可查的标准,当你看到有味的代码时你就“感觉”
到了如果你不把异味清除,不久之后你就会习惯这种气味,不再对它有察觉
我们经常会意识不到自己在写很臭的代码,经常需要外人为我们指出这点
[b]重复的代码[/b]
会引起程序里面多个地方相同的错误
[b]不必要的复杂[/b]
复杂最恐怖
[b]异常处理[/b]
没有比空的异常捕捉代码更糟糕的
[b]长方法[/b]
你不能在一屏上看到整个方法
这通常意味着一个方法承担这多重任务
难于调试
不可测试
难于重用-> 导致程序员从方法的其它地方拷贝粘贴出重复的代码
复杂的条件语句-> 挑战大脑的逻辑分析能力
方法长度:组织归纳水平比控制代码行数更重要
[b]变量名称[/b]
使用能表意的名称
不要用单个字母做名称
也不要使用太长的名称
[b]最臭的代码[/b]
冗长的类
重复的代码
淘汰的方法
不必要的塑型(cast)
过度使用设计模式
[b]代码除味[/b]
代码复查!
[b]一些设计原则[/b]
高聚合
低耦合
Demeter定律 [不要告诉我,我会通知你]
Liskov替换原则
先让它跑起来,再让它无误,再让它快速
开发/闭合原则
反向依赖
单一责任原则
敏捷开发方法是用来应付那些要求代码做大量改动的反馈信息的方法。
如果程序没有用一种好的表达方式来表现,那程序会很难读,难维护,难修改。
[b]什么是代码异味?[/b]
代码异味是一种由写的很差的代码引起的一种有臭味的感觉,
异味更多的是来自一种直觉,而不是一种有据可查的标准,当你看到有味的代码时你就“感觉”
到了如果你不把异味清除,不久之后你就会习惯这种气味,不再对它有察觉
我们经常会意识不到自己在写很臭的代码,经常需要外人为我们指出这点
[b]重复的代码[/b]
会引起程序里面多个地方相同的错误
[b]不必要的复杂[/b]
复杂最恐怖
[b]异常处理[/b]
没有比空的异常捕捉代码更糟糕的
try{... } catch (Exception e){
}
[b]长方法[/b]
你不能在一屏上看到整个方法
这通常意味着一个方法承担这多重任务
难于调试
不可测试
难于重用-> 导致程序员从方法的其它地方拷贝粘贴出重复的代码
复杂的条件语句-> 挑战大脑的逻辑分析能力
方法长度:组织归纳水平比控制代码行数更重要
[b]变量名称[/b]
使用能表意的名称
不要用单个字母做名称
也不要使用太长的名称
[b]最臭的代码[/b]
冗长的类
重复的代码
淘汰的方法
不必要的塑型(cast)
过度使用设计模式
[b]代码除味[/b]
代码复查!
[b]一些设计原则[/b]
高聚合
低耦合
Demeter定律 [不要告诉我,我会通知你]
Liskov替换原则
先让它跑起来,再让它无误,再让它快速
开发/闭合原则
反向依赖
单一责任原则