加餐丨你真了解重构吗_第1页
加餐丨你真了解重构吗_第2页
加餐丨你真了解重构吗_第3页
加餐丨你真了解重构吗_第4页
加餐丨你真了解重构吗_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

很多人的选择是,顺着既有的代码结构继续写下去,这里添一个if,那里加一个标记如果用一个物理学术语描述这种现象,那就是“熵增”,这也就是大名鼎鼎的热力学第二定律。如果没有外部干预,系统会朝着越来越的方向发展。对抗熵增的一个办法就是引入得推广的实践是从一个小圈子开始的,这个小圈子的就是我们在专栏里前面提到过的两位大师级程序员:WardCunningham和Kent。而真正让这个概念走出小圈子,来到大众面前的,则是MartinFowler在1999年写下那本软件行业的名著《重构:改善既有代码的设计》(Refactoring:ImprovingtheDesignofExistingCode)。MartinFowler的本事就在于他极强的阐述能力,很多名词经过他的定义就会成为行业的流你理解的重构是什么呢?就以前面那句话为例:这个系统太乱了,需要重构一下。如果我们接着问,你打算怎么重构呢?一些人就会告诉你,他们打算另立门户,重新实现这套系统。你打算做的事叫重写(rewrie),而不是重构(refaoring)。《重构》是一本畅销书,但以我的了解,很少有人真正读完它,因为MartinFowler是按照两本书(DuplexBook)来写的,这是他常用写书的风格,前半部分是内容讲解,后半IDE单。估计这也是很多人就此把书放下,觉得重构不过如此的原因。重构,也属于微操作的行列,与我们介绍的任务分解结合起来,你就能很好地理解那些重构手法的含义了:一步一步完成它。IDE学习重构,先要知道重构的定义。关于这点,MartinFowlerf或标记的做法就是嗅不出坏味道的表《重构》中,可变数据(utableata)、循环语句(ops)都定义成了坏味道,如果曾关些年程发势,的定实会为之。但了解数式编程的趋势,就不难理解它们的由来了。这些概念是怎样相互配合一起的了吧!RefactoringtoPatt)。当然,这也是一本书的名字,有的话,可以找来读一读。我个人有个猜想,如果这个讨论可以延续到2008年,等到RobertMartin的《CleanCode》,也许有人会提“重构成CleanCode”也未可知。所以,无论是设计模式,亦或是CleanCode,都是推荐你去学习的。也可看见森林。当然,重构的具体知识,还是去看MartinFowler的书吧!既然重构的也是分解,它就需要大量的锤炼。就像之前提到任务分解原则一样,我在重构上也下了很大的功夫做了专门的练习,才能让自己一小步一小步地去做。但一个有追求的软件工匠不就应该这样锤炼自己的基本功吗? 售卖。页面已增加防盗追踪,将依法其上一 划重点|一次关于“沟通反馈”内容的复下一 29|“懒惰”应该是所有程序员的骄言言非 4作者回复:有几本可以了解一下,《计算机程序的解释与构造》(StructureandInterpretationofComputerPrograms,SICP),还有《Haskell(LearnYouaHaskellforGreatGood!),《函数式编程思维》(FunctionalThinking) 1西西弗与卡 刘晓 旭 旭 我行我 packageimportpublicclassT1Dao monpublicvoidprintNam

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论