系统重构到这一步,我们来看看用户关于时间问候语部分的变更需求:问候需要更加精细,如中午问候“Good noon! ”、傍晚问候“Good evening! ”、午夜问候“Good midnight! ”。除此之外,用户希望在一些特殊的节日,如新年问候“Happy new year! ”、情人节问候“Happy valentine’s day! ”、三八妇女节问候“Happywomen’s day! ”,等等。此时我们发现,我们对时间问候语的变更不再需要修改HelloWorld或其它什么类,而是仅仅专注于修改GreetingAboutTime就可以了,这就是因重构带来的改善。同时,我们发现...
软件的发展规律就是这样的,起初十分简单明了,使我们可以轻松地进行合理的设计。接着开始变更,业务变得越来越复杂,程序也随之变得越来越复杂了。正是因为软件开始由简单软件向复杂软件转变,而我们的设计却没有合理地调整,最后导致了我们的系统越维护越困难,成为了不可被扣的遗留系统——IT攻城狮永远的痛。这就是遗留系统产生的根本原因。因此,解决遗留系统的根本办法,就是...
以往我们在设计一个系统时,总是喜欢大布局。全面地整理系统需求,全面地分析系统功能,再将系统整体地划分成数个模块,分别去设计、开发、测试。这样一个过程往往会持续数月,花费大量的工作量。但是,不到最后开发完成出来,谁都不知道会不会存在问题。最终的结局就成了一场赌博,不成功则失败,这就是“大布局”的弊病。同时,任何人,即使是那些资深的高级工程师,也不可能一开始就保证自己的设计是正确的,总有或这或那考虑不周的地方......
如题,系统重构是一个什么玩意儿呢?大家可能有很多的不同看法: 1.系统重构是那些系统架构师、技术大牛玩的高端玩意儿,跟咱普通屌丝不懂,跟咱没啥关系。 2.系统重构就是改代码,大改特改那种,整个重来一遍,这个比较邪恶,比较容易改出事儿,还是不要轻易尝试。 3.我知道系统重构,也知道它能改善遗留系统,但我还是不敢轻易尝试,因为改出问题来怎么办,还是算了吧。 然而我认为,现在我们对系统重构有太多的误解,以至于我们还不怎么了解它,就已经将它拒之门外...
我们身处软件工业时代这个令人振奋的时代,却面临着遗留系统这个令人尴尬的难题。事情总是这样的:软件最开初开发的时候总是非常清晰,清晰的需求、清晰的设计、清晰的代码,清晰的程序结构让人赏心悦目,甚至有些自我陶醉。随后,软件开始需求变更,每变更一次软件的质量就下降一次。这样,软件经过数次的变更以后,需求文档变得模糊不清,设计思路跟不上变更的脚步,程序代码则随着业务逻辑的复杂而臃肿不堪,程序员开始读不懂代码,软件开发工作变得不再是一种乐趣。随着时间的推移,经过数年、数十次的需求变更,情况变得越来越糟,软件质量像滚雪球一样直线下降。难道需求变更就是软件变糟的罪恶之源吗?
我常常觉得我们非常幸运,我们现在所处的时代是一个令人振奋的时代,我们进入了软件工业时代。在这个时代里,我们进行软件开发已经不再是一个一个的小作坊,我们在进行着集团化的大规模开发。我们开发的软件不再是为某个车间、某个工序设计的辅助工具,它从某个单位走向整个集团,走向整个行业,甚至整个社会,发挥着越来越重要的作用。一套软件所起到的作用与影响有多大,已经远远超越了所有人的想象,成为一个地区、一个社会,乃至整个国家不可或缺的组成部分。慢慢地,人们已经难以想象没有某某软件或系统的生活和工作会是怎样。这就是软件工业时代的重要时代特征。然而,在这个令人振奋的软件工业时代,处于时代中心的各大软件企业却令人沮丧......
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号