《重构--改善既有代码的设计》--重构,第一个案例(1)
2015-06-23 08:46
302 查看
重构(refactoring):在不改变代码外在行为的前提下,对代码做出修改,以改进程序的内部结构。
如果你发现自己需要为程序添加一个特性,而代码结构使你无法很方便地达成目的,那就先重构那个程序,使特性的添加比较容易进行,然后再添加特性。
重构之前,首先检查自己是否有一套可靠的测试机制。这些测试必须有自我检验能力。
代码块愈小,代码的功能就愈容易管理,代码的处理和移动也就愈轻松。
任何不会被修改的变量都可以被当成参数传入新的函数。如果只有一个变量会被修改,可以把它当作返回值。
重构技术就是以微小的步伐修改程序。如果你犯下错误,很容易便可发现它。
任何一个傻瓜都能写出计算机可以理解的代码。唯有写出人类容易理解的代码,才是优秀的程序员。代码应该表现自己的目的。
当一个局部变量首次赋值后就不再有任何变改变,就应该把这个变量去掉,直接使用其初始值。
switch语句最好不要在另一个对象(class)的属性基础上运用它,如果不得不使用,也应该在自己的对象上使用。
如果你发现自己需要为程序添加一个特性,而代码结构使你无法很方便地达成目的,那就先重构那个程序,使特性的添加比较容易进行,然后再添加特性。
重构之前,首先检查自己是否有一套可靠的测试机制。这些测试必须有自我检验能力。
代码块愈小,代码的功能就愈容易管理,代码的处理和移动也就愈轻松。
任何不会被修改的变量都可以被当成参数传入新的函数。如果只有一个变量会被修改,可以把它当作返回值。
重构技术就是以微小的步伐修改程序。如果你犯下错误,很容易便可发现它。
任何一个傻瓜都能写出计算机可以理解的代码。唯有写出人类容易理解的代码,才是优秀的程序员。代码应该表现自己的目的。
当一个局部变量首次赋值后就不再有任何变改变,就应该把这个变量去掉,直接使用其初始值。
switch语句最好不要在另一个对象(class)的属性基础上运用它,如果不得不使用,也应该在自己的对象上使用。
相关文章推荐
- 梦断代码阅读笔记之三
- Qt 编码中的某一字从 UTF-8 转换到 UNICODE 国际化时可能用到
- 不可或缺 Windows Native (19) - C++: 对象的动态创建和释放, 对象的赋值和复制, 静态属性和静态函数, 类模板
- Java笔记:环境搭建
- 开源 java CMS - FreeCMS2.3会员个人资料
- C#发送邮件代码
- 梦断代码阅读笔记之二
- C# 发送邮件源码
- 用map, next 和 reject 简化代码(ruby)
- Effective C++ 条款10
- MPI编程简述
- C# 3DES加密解密,差点要了命
- 转 错误代码2104:无法下载Silverlight应用程序。请查看Web服务器设置
- matplotlib简单的新手教程和动画
- 《代码大全》阅读笔记03
- 《代码大全》阅读笔记02
- 《代码大全》阅读笔记01
- Yeoman generators 创建 ASP.NET 应用程序
- 《梦断代码》阅读笔记03
- php中利用header设置content-type和常见文件类型的content-type