Refactoring 笔记 - 重构原则总结》的相关内容

失踪的链环

发在内部论坛里国庆7天征求意见也已经差不多了,转到这里算正式发文.欢迎继续拍砖. --------------------------   在程序设计这个行当里,软件设计与其说是一种技术,不如说是一种魔法,巫术.如果一个程序员坐在电脑前开始设计一个的程序,他基本上就是像是神汉巫婆处于灵魂附体的迷幻状态:脑子中不断地反复默念各种设计口诀,10指像是提线木偶一样把一行行代码犹如咒语般地输入到计算机里 ...
by Trustno1 2006-10-07 浏览 (21406) 回复 (61) 关键字:

设计模式与XP

转自CSDN 设计模式与XP  Joshua Kerievsky 著,Gigix 译 概述 模式和极端编程(XP )都为软件设计、开发者提供了无法用金钱衡量的帮助。但是迄今为止XP 大量关注于重构(refactoring ),而对模式只字不提。在这篇文章中,我问“为什么”,并且最终描述出模式怎样以XP 的方式更好地实现、以及XP 怎样因为包含对模式的使用而变得更好。 致谢 ...
by bruce 2004-02-10 浏览 (9370) 回复 (10) 关键字:

讨论:重构的前提是不是 TDD

响应 potian 的意见开始讨论重构。大家来讨论些难度高一点的问题,好让自己有点成就感。 有人看到成功的重构非常依赖于自动测试,于是就产生了这种想法:重构的前提是 TDD,进而产生了这样的推论:因为我们现在没有做 TDD,所以我们不可能做好重构。 我的观点是重构确实很依赖于自动测试,但是重构与 TDD 是两个话题,现在完全采用 TDD 的开发方法只有 XP,但是在其它开发方法中也是完全可以做好重 ...
by dlee 2004-07-26 浏览 (5774) 回复 (11) 关键字:

胖子说RUP

要说RUP,就要先说UP。 UP可以用下面的话来概括——用例驱动、以构架为中心、迭代和增量的开发过程。 acobson在《Object-Oriented Software Engineering : A Use Case Drivern Approach》中给的定义是这样的:当希望改变系统的行为时,重建相对应的参与者和用例模型。整个系统的基础构架将有用户所希望使用系统行为进行的操作来控制。由于控制 ...
by ozzzzzz 2005-06-07 浏览 (49086) 回复 (120) 关键字:

再论要不要全程MockObject

MockObject的好处: 第一、隔绝其他模块出错引起本模块的测试错误。 第二、隔绝其他模块的开发状态,只要定义了接口,不用管隔壁那条友开发完成没有,debug干净没有。 第三、一些速度较慢的操作,可以用mockObject代替,快速返回。    但MockObject也有不爽的地方,所以,我的观点仍然是,团队应该以自己的开发顺序,人员与模块划分,决定某个TestCase是 ...
by 江南白衣 2006-04-22 浏览 (15780) 回复 (29) 关键字:

重构——读书笔记

1、  什么是重构?在代码写好之后改进它的设计 2、  进行重构的时候,我们需要依赖测试,让它告诉我们是否引入了臭虫。好的测试是重构的根本。 3、  重构的节奏:测试、小修改、测试、小修改、…… 4、  “两顶帽子”:使用重构技术开发软件时,你把自己的时间分配给两种截然不同的行为:“添加新功能”和“重构”。添加新功能时,你不以你更改修改既有代码,只管添 ...
by lavasp 2007-07-25 浏览 (234) 回复 (0) 关键字: 重构 笔记

重构之维——关于重构及《重构》的随想

重构之维——关于重构及《重构》的随想  我很少给自己参与其中的书籍做评论,因为这样的评论会同时失去公允和陌生感,而这两者恰好都是优秀书评的要素。对于这本即将出版的《重构》,我也有同样的尴尬。如果重新拿起这本书,在查找“重构细目”之前,我会想些什么呢?既然已经没有评论的可能,我就邀读者分享这些凌乱的思绪吧。  曾经多次与朋友谈起,翻译是一项有趣的工作,而以译本作为研究资料则是不负责任的态度。“重构” ...
by softstone 2003-08-01 浏览 (42) 回复 (0) 关键字:

重 构

转自:http://greaterthanme.blog.hexun.com/5509902_d.html 重构(Refactoring)就是在不改变软件现有功能的基础上,通过调整程序代码改善软件的质量、性能,使其程序的设计模式和架构更趋合理,提高软件的扩展性和维护性。   也许有人会问,为什么不在项目开始时多花些时间把设计做好,而要以后花时间来重构呢?要知道一个完美得可以预见未来任何变化的 ...
by xiaofengtoo 2007-12-18 浏览 (207) 回复 (0) 关键字: Eclipse IT

对遗留系统组织重构项目

很多IT组织都面临一个难题:老系统的维护、升级越来越难做。特别是那些价值高、生命周期长、规模大的核心业务系统,越到后来,要修复一个缺陷或者新增一个功能就需要越大的工作量。这是为什么呢?软 件的质量体现在两方面:商业方面的质量,以及技术方面的质量。从商业的角度看来,“成功的软件”意味着它所创造的价值超出在它身上付出的代价。从技术的角 度看来,“成功的软件&rdqu ...
by softstone 2008-02-25 浏览 (116) 回复 (0) 关键字:

重构

何谓重构: 对软件内部结构的一种调整,目标是在不改变软件行为(软件之可查行为)的情况下,提高其可理解性,降低修改成本。 为何重构: 1.改进软件设计:经常性的重构,可以帮助代码保持自己该有的形态。其中一个重要方向是消除重复代码(Duplicate Code),这个方向的重要性主要是着眼与未来,重构后的代码的运行轨迹几乎不会发生改变,所以它的性能不会有明显提高,但可以提高以后修改的效率。 2 ...
by bluelzx 2008-05-22 浏览 (86) 回复 (0) 关键字:

敏捷开发中常见的九大误解

敏捷不是一个过程,是一类过程的统称,它们有一个共性,就是符合敏捷价值观,遵循敏捷的原则。 敏捷的价值观如下: 个体和交互 胜过 过程和工具  可以工作的软件 胜过 面面俱到的文档 客户合作 胜过 合同谈判  响应变化 胜过 遵循计划  由价值观引出的12条敏捷原则:  1、我们最优先要做的是通过尽早的、持续的交付有价值的软件来使客户满意。 2、即使到了开发的后期,也欢迎改 ...
by liuqiang 2008-08-07 浏览 (157) 回复 (0)

《CSS实战手册》中文版发布

  10年前,当我在记事本中一点一滴地书写着HTML、JavaScript、CSS并保存,然后在浏览器里预览自己的杰作时,感觉这是那么神奇、有趣!   10年后的今天,当Web 2.0的概念已经遍地开花结果时,从1996年提出的CSS 1,到即将出现的CSS 3,我们难免不联想到Web 3.0的蠢蠢欲动了。   没有CSS的手册,人们常常不知道从哪里入手学习CSS。好的CSS点子甚至可以胜过经验 ...
by YuLimin 2007-10-24 浏览 (3406) 回复 (7) 关键字: CSS Hack Bug

软件开发中的反模式

反模式是这样一种模式,它告诉我们在什么情况下我们会把一个问题做的更糟。例如: 斑点The Blob 程序风格的设计导致一个对象集中了过多的功能,而其他的对象只用来保存数据或者执行一些简单的过程。解决的办法是,对设计进行重构,使功能平均的分散开,从而将某一变动带来的的影响限制在一定的范围内。 持续退化Continuous Obsolescence 技术变革的是如此的快以至于开发者们经常在跟进 ...
by jonathan_zz 2008-05-20 浏览 (1416) 回复 (4) 关键字:

四个有害的java习惯

John O'Hanley 的这篇文章列举了四个有害的java编码习惯,并提出了改正方案。 这四个习惯普遍存在于java程序员中,并且已经被广泛接受,大家都习以为常,流毒甚远。   1.对局部变量(local variables),字段(fields),参数(method arguments)这三种变量的命名没有区分,造成了代码的阅读困难,增加了代码的维护成本。   ...
by jolestar 2008-07-29 浏览 (6751) 回复 (56) 关键字:

相关问答

赞助商链接