最新文章列表

大话重构连载18:最常见的问题

使用抽取方法,虽然道理十分简单,但实际操作起来却并不是那么容易的。完成抽取方法最大的困难,就是如何处理抽取函数与原函数的数据交换。如同 ...
fangang 评论(4) 有2223人浏览 2014-11-02 17:15

大话重构连载17:抽取方法的实践

说了那么多理论,我们来看看怎样使用抽取方法来重构遗留系统。如前所述,重构的过程首先是阅读程序代码,边阅读边整理程序。将功能相对独立的代码段放在一起,在前面加上注释。调整一些程序的顺序,将相关的代码尽量放在一起,但要保证程序执行的结果不会发生改变。比较典型的,将变量的定义与使用变量的代码放在一起。这个步骤比较实用,因为许多的遗留系统,其代码都有一个坏毛病,就是在程序开始时定义一大堆变量,但要弄清这些变 ...
fangang 评论(0) 有2352人浏览 2014-10-29 08:57

大话重构连载16:超级大函数

事情总是这样的:当我们对一个遗留系统一忍再忍,再忍,忍,还要忍……终于积攒到某一天,实在忍无可忍了,拍案而起,不能再忍了,重构!!!事情就这样发生了。然而,在这时你突然发现,重构的工作千头万绪,真不知从何开始。堆积如山的问题此起彼伏,期望修改的设计思绪万千。这里有个想法,那里有个思路,什么都想做,却什么都做不了,真是脑子里一团乱麻。这时候,没有一个合理的步骤,清晰的计划,瞎干蛮干是十分危险的,它会为 ...
fangang 评论(0) 有2019人浏览 2014-10-18 20:49

重构(Refactoring)

重构 重构(Refactoring)就是在不改变软件现有功能的基础上,通过调整程序代码改善软件的质量、性能,使其程序的设计模式和架构更趋合理,提高软件 ...
wisfly 评论(0) 有754人浏览 2014-10-11 14:42

读《大话重构》收获

软件在完成开发后,由于对缺陷的修改,以及新功能的添加,对代码的改动可能较大,同时软件的质量和软件的维护性也越来越低,在软件开发者的角度看软件的功能、逻辑更加复杂了,代码的可读性和可维护性降低了。 在《大话重构》这本书里面作者提到使用系统重构的方法来解决这一类问题,主要的思路是以单元测试为保障;逐步抽离小的功能(小步快跑的思想),分离大方法、大对象,在分离成各个功能块的时候有很多相似的地方,就对这 ...
zhi_hui 评论(0) 有412人浏览 2014-09-22 10:09

TDD与重构

一.重构实践 实践题目:重构获取指定数值内的所有质数的方法 单元测试案例: package training.generatPrimes.test; import static org.junit.Assert.*; import org.junit.Test; import training.generatPrimes.PrimeGenerator; public ...
bijian1013 评论(0) 有1499人浏览 2014-09-21 14:42

大话重构连载15:采用Mock技术完成测试

第五次重构我们引入了数据库的设计,用户信息要从数据库中读取,问候语库存储在数据库中,并支持添加与更新。数据库的引入使自动化测试变得困难了,因为数据状态总是变化着的,而这种变化使得测试过程不能复现,这是我们不愿看到的。因此,我们在设计时将业务与数据库访问分离,形成了UserDao与GreetingRuleDao。此时,我们的设计应当遵从“依赖反转”原则,即将UserDao与GreetingRuleDa ...
fangang 评论(0) 有2293人浏览 2014-09-21 11:08

大话重构连载14:我们是这样自动化测试的

说了那么多,让我们用示例看看,系统重构是应该怎样做自动化测试的。还是回到前面那个HelloWorld的例子(详见 3.3 小步快跑是这样玩的),该类中有一个sayHello()方法,只要我们输入当前的时间与用户名,就返回对该用户的问候语。如果当前时间是上午,则返回“Hi, XXX. Good morning!”;如果是下午,则返回“Hi, XXX. Good afternoon!”;如果是晚上,则返 ...
fangang 评论(0) 有2314人浏览 2014-09-18 00:52

大话重构连载13:自动化测试——想说爱你不容易

正如许多事情都有其两面性一样,测试方法也是这样。要保证测试方法正确,最简单、最直观地想法就是多写些测试用例,从更多地角度去测试,但这必然增加我们的测试成本。小步快跑要求我们频繁进行测试,假如我们重构的周期是20分钟,但测试却要花掉10分钟,那么这样的成本就实在太大了。假如这种测试还是开发人员手工测试,每天都有对同样的测试反复执行数十遍,那么开发人员估计就要疯掉了。 你可能立即就想到自动化测试了。是 ...
fangang 评论(3) 有2469人浏览 2014-09-09 10:48

大话重构连载12:你不能没有保险索

通过前面的描述你已经对重构中“小步快跑”的开发模式有了一个清楚的认识。学会和习惯小步快跑的开发模式,对于重构工作极其重要,因为它让这种 ...
fangang 评论(0) 有1989人浏览 2014-09-08 06:59

party-bid重构总结

第四张卡的内容不多,有了做前面三张卡的经验,第四张卡一天就做好了,需要学习到的新内容就是一个模态框,模态框修改了一些标签,就能做成自己想要的样子。所以,之后我重点就放在了重构上。 对于重构,我也是有一点点概念了,在不改变功能的情况下,修改代码和数据结构就是重构吧。第一次重构,主要是对代码规范的了解,作为一名程序员,规范代码是最基本的要求之一。比如:=左右要空格,{前也要空格。 第二次重构,面向 ...
liuqi8839 评论(0) 有488人浏览 2014-09-03 17:02

大话重构连载11:小步快跑是这样玩的

说了那么多,相信你对小步快跑的概念有了一个初步的印象,但理解还不是很深。让我们来看一看一个实际工作中的例子,来亲身感受一下什么是大布局 ...
fangang 评论(0) 有2354人浏览 2014-08-26 10:29

大话重构连载10:小设计而不是大布局

开车的朋友一定深有体会,驾驶汽车其实就是在不断矫正汽车行驶方向的一个过程。在整个驾驶过程中,你必须全神贯注地紧盯前方,通过方向盘不断矫 ...
fangang 评论(0) 有2357人浏览 2014-08-10 14:39

大话重构连载9:大布局你伤不起

作为优秀开发人员,重构应当成为一种习惯,自然而然地运用重构的开发模式,自然而然地在优化和调整我们的代码。它首先要求我们掌握重构的开发模 ...
fangang 评论(0) 有2132人浏览 2014-08-04 10:03

试读《大话重构》有感

看到《大话重构》第三章的小标题时,就隐隐有一些感触,读完整章内容后更加深了感触,文章话语很朴实,举的例子也是我们 在项目中常遇到的困惑,同时它也给出了解决方案:小处着手,积极反馈,持续改进。下面谈谈个人的读后感受: (一)大布局伤不起,但又不得不伤。 第一小节中列举了一个“大布局”重构的例子,从最后的结果来说,是失败的,但如果结果能符合客户要求,我们能还能说它失败嘛。越大的改造, 需要越早 ...
lupan028 评论(0) 有504人浏览 2014-07-30 14:57

谈谈我对“小步快跑”的理解

        看到书中第三章的标题,已经隐隐知道作者要讲述的情节。看完全章节后,果然不出所料,同时产生强烈地共鸣。下面从三个方面来阐述自己对于软件开发小步快跑的理解。         (一)开发方式中的小步快跑         在软件开发中,选用传统瀑布模型的开发方式越来越突显它的弊端。现在更易为项目组所认同的是敏捷迭代模型的开发方式。迭代的特点就是典型的小步快跑,它将一个项目化整为零,分为几个 ...
ilikeebook 评论(0) 有934人浏览 2014-07-30 02:31

新书试读-《大话重构》

      又要写试读笔记,头疼,因为要写出好文章总是要花很多精力和心血的。这次试读的是《大话重构》,一讲到重构,感慨良多! 1.你的系统需要重构      随着业务的扩展,数据量的提升,原有的系统已经无法满足贪婪的业务需要了,因此,重构往往成了偶然中的必然事件。我自己也曾亲身经历过这么一段。因为重构,我心潮澎湃、没日没夜的投入工作,用那种“把项目当自己儿子养的感觉”来形容再恰当不过了!重构过 ...
kingwudy 评论(0) 有1023人浏览 2014-07-28 10:32

大话重构连载8:盘点我们的重构工具箱

下面我们来盘点一下系统重构工具箱里都有什么,也就是看一看系统重构到底都有哪些方法。系统重构总是在不同层次上调整我们的代码,因此重构方法也就分为了多个层次。从总体上看,重构方法分为以下几个层次:方法的重构、对象的重构、对象间的重构、继承体系间的重构、组织数据的重构与体系架构的重构。 前面那个例子我们可以清楚地看到方法的重构过程。方法的重构往往发生在一个对象的内部,是对一个对象内部的优化。从这个例子中 ...
fangang 评论(5) 有2595人浏览 2014-07-27 21:55

大话重构连载6:一个真实的谎言

经过前面的一番讲解,相信你已经对系统重构有了一些初步的认识了。一切的一切仿佛在告诉我们,系统重构总是与需求变更无关。但此时,我不得不告诉你这是真实的谎言。 我们的软件系统总是处于一种变化之中,并且往往是一种由浅入深、由易到难的过程。但是,当系统复杂程度发生变化时,我们应当及时调整我们的设计,来适应新的变化。然而我们没有做到这一点,所以我们的系统维护变得越来越困难。要解决我们的问题必须通过系统重构去 ...
fangang 评论(0) 有2210人浏览 2014-07-22 08:46

大话重构连载7:重构是一系列的等量变换

毫无疑问,系统重构是一件如履薄冰、如坐针毡、你必须时时小心应对的工作,你就像走在钢丝上的人,每一步你都必须要保证正确,一个不经意的失误 ...
fangang 评论(1) 有2131人浏览 2014-07-22 08:37

最近博客热门TAG

Java(141747) C(73651) C++(68608) SQL(64571) C#(59609) XML(59133) HTML(59043) JavaScript(54918) .net(54785) Web(54513) 工作(54116) Linux(50906) Oracle(49876) 应用服务器(43288) Spring(40812) 编程(39454) Windows(39381) JSP(37542) MySQL(37268) 数据结构(36423)

博客人气排行榜

    博客电子书下载排行

      >>浏览更多下载

      相关资讯

      相关讨论

      Global site tag (gtag.js) - Google Analytics