说实话,即便是在写《重构之维》的时候,这个问题仍然困扰着我:refactoring(refactory)这个词从何而来?Martin Fowler猜,它来自代数里的因式分解(factoring),但最早的重构者们似乎从来没有想到过这个词……
——————
EtymologyOfRefactoring |
refactoring |
10 September 2003 |
Where did the word refactoring come from?
This question struck my mind a few times when writing the refactoring book. I didn't think that trying to do an intensive etymological search was worth the trouble - after all it was the techniques that I was focused on - but I did ask around the people who had helped develop the ideas (Ward Cunningham, Kent Beck, Bill Opdyke, John Brant, Don Roberts, Ralph Johnson...)
The obvious answer comes from the notion of factoring in mathematics. You can take an expressions such as x^2 + 5x + 6 and factor it into (x+2)(x+3) . By factoring it you can make a number of mathematical operations much easier. Obviously this is much the same as representing 18 as 2*3^2. I've certainly often heard of people talking about a program as well factored once it's broken out into similarly logical chunks.
When I asked around the creators of refactoring, the common answer was that they had no idea. The term had been around for a while and they don't know where it came from.
The one definite answer I got was from Bill Opdyke, who did the first thesis on refactoring. He remembered a conversation during a walk with Ralph Johnson. They were discussing the notion of Software Factory, which was then in vogue. They surmised that since software development was more like design than like manufacturing, it would be better to call it a Software Refactory. Refactory has gone on to be the name for the consulting organization that Ralph and his colleagues use.
|
分享到:
相关推荐
Eclipse中自动重构实现探索 重构代码一词通常是指在不改变代码的外部行为情况下而修改源代码,有时非正式地称为「清理干净」。
可以实现信号的匹配重构,一维二维信号均可。
这是你学习重构的好帮手,有好多例子,这是你学习重构的好帮手,有好多例子。这是你学习重构的好帮手,有好多例子。
重构ppt重构ppt重构ppt重构ppt重构ppt重构ppt重构ppt重构ppt重构ppt重构ppt重构ppt重构ppt重构ppt重构ppt重构ppt重构ppt重构ppt重构ppt重构ppt重构ppt重构ppt重构ppt重构ppt重构ppt重构ppt重构ppt
重构重构重构重构重构重构重构重构重构重构
r重构r重构r重构r重构r重构r重构r重构r重构r重构
小波分解与小波重构的几个matlab原程序,信号加噪声,进行消噪处理 ,阈值处理
重构中的源码,可能对照重构的书籍进行阅读 对源码的处理,都是例子中的JAVA代码
新结构经济学重构发展经济学的框架.doc
基于Matlab实现的小波分解与重构源程序,对于时间序列的周期分析有重要意义
基于FPGA的实验室可重构信号源的设计.pdf
由于可重构机器人构型的多样性,其动力学的分析方法要求建模方便,并且具有通用性。基于此,讨论在运动螺旋和力螺旋的基础上采用拉格朗日方程建立机器人动力学方程的方法。采用运动螺旋和力螺旋表示,可以对机器人各...
我的重构学习
自己手动写的c++版本的重构例子。原书上是Java的。实测可行
算法与数据结构课程设计源码与文档,题目为排序重构问题和教学学计划编制问题
JAVA 代码重构 JAVA 代码重构 JAVA 代码重构 JAVA 代码重构 JAVA 代码重构
对经验模态分解后的各分量IMF进行重构代码,函数可直接调用。
经典软件重构 经典软件重构 经典软件重构 经典软件重构 经典软件重构
名著重构名著重构名著重构名著重构名著重构名著重构名著重构名著重构名著重构名著重构名著重构名著重构名著重构名著重构名著重构名著重构名著重构名著重构名著重构名著重构名著重构名著重构名著重构名著重构名著重构...