程序员学习进步之重构代码(程序员学习进步之重构代码)

当了很多年的程序员了,不要告诉我没有重构过自己写的代码,什么?重构代码是什么意思?那下面我们来说说重构代码。

程序员学习进步之重构代码(程序员学习进步之重构代码)(1)

重构是在不改变软件可观察行为的前提下改善内部结构。简单的说就是你写的代码,在返回来重看的时候,发现写的很烂,并且不能支持现有功能,所以必须在不改变现有功能的基础上面来重写。

重构前也要必须准备一下:

  • 重构前,先检查自己是否有一套可靠的测试机制。这些测试必须有自我检验能力。

  • 重构技术就是以微小的步伐修改程序。如果你犯下错误,很容易便可发现它。

  • 任何一个傻瓜都能写出计算机可以理解的代码。唯有写出人类容易理解的代码,才是优秀的程序员。(变量命名)

  • 重构:对软件内部结构的一种调整,目的是在不改变软件可观察行为的前提下,提高其可理解性,降低其修改成本。

  • 重构:使用一系列重构方法,在不改变软件可观察可观察行为的前提下,调整其结构。

什么样的代码要重构:

  • Duplicated Code 重复代码

  • Long Method 过长函数

  • Large Class 过大的类

  • Long Parameter List 过长参数列

  • Divergent Change 发散式变化 – 软件能够更容易被修改

  • Shotgun Surgery 霰弹式修改 – 在很多类中做出许多小的修改

  • Feature Envy 依恋情结 – 函数对某个类的兴趣高过对自己所处类的兴趣

  • Data Clumps 数据泥团 – 很多相同的参数(可以新建一个类来保存)

  • Primitive Obsession 基本类型偏执

  • Switch Statements switch 惊悚现身

  • Parallel Inheritance Hierarchies 平行继承体系

  • Lazy Class 冗赘类

  • Speculative Generality 夸夸其谈未来性

  • Temporary Field 令人迷惑的暂时字段

  • Message Chains 过度耦合的消息链

  • Middle Man 中间人

  • Inappropriate Intimacy 狎昵关系

  • Alternative Classes with Different Interfaces 异曲同工的类

  • Incomplete Library Class 不完美的类库

  • Data Class 纯稚的数据类

  • Refused Bequest 被拒绝的遗赠

  • Comments 过多的注释

总之多重构自己的代码,就可以让自己代码写的更漂亮,让自己的技术水平和写程序的思维角度更上一层楼。

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页