【发布时间】:2014-01-04 15:15:42
【问题描述】:
我到处都听到重构这个词。任何编程工具都有一些关于它如何帮助重构的废话,每个程序员或经理都会告诉我一些关于重构的事情。但对我来说,它仍然听起来像一个没有任何意义的神奇词。看来重构只是编辑你的代码还是什么?
维基百科引述
代码重构是一种“用于重构现有代码体、改变其内部结构而不改变其外部行为的纪律性技术”,[1] 旨在改进软件的某些非功能属性。优点包括提高代码可读性和降低复杂性以提高源代码的可维护性,以及更具表现力的内部架构或对象模型以提高可扩展性。
什么?每个(任何)人都明白这一点吗?那些跟我谈重构的人,真的是这个吗?
为什么是这个名字?那么什么是“分解”呢?
【问题讨论】:
-
想想“重新设计”,让屏幕后面的东西看起来更流畅……在“重构”的程序员世界里。
-
重构通常与重命名互换使用...重构变量就是在整个应用程序中更改其名称。关于 WP 引用:当您谈论重构别人的代码时,这绝对有助于提高可读性,我总是将变量重构为我理解的名称,以便我更容易阅读。
-
例如,假设您有一个 1000 行长的函数。因此,您决定通过将计算 fudge 因子的部分移动到一个名为 calculateFudgeFactor() 的函数中并改为调用该函数来缩短它。您可以轻松地剪切文本,创建一个新函数,粘贴文本,然后从文本所在的位置调用该函数,或者您可以单击一个按钮,键入 calculateFudgeFactor 并点击 OK。重构正在改变代码的组织方式而不改变它的作用。
-
是的,他们确实是这个意思,而且段落没有什么特别难的地方。把它分解。因式分解可能来自 Forth 对这个词的使用,顺便说一句。
-
我强烈推荐 Martin Fowler 的书。它在改变我编码的书籍的简短列表中。
标签: refactoring