重构连载之大布局与小步快跑

以往我们在重新设计一个系统时,总是喜欢大布局。全面地整理系统需求,全面地分析系统功能,再全面地设计系统、开发、测试。这样一个过程往往会持续数月,花费大量的工作量。但是,不到最后设计出来,谁都不知道会不会存在问题。这就是“大布局”的弊病。

正因为如此,软件大师在讲述系统重构时总是强调,系统重构应当避免大设计,而应当尽量采用一个一个连续不断的小设计。这就是我们所说的“小步快跑”的设计模式。

小步快跑体现出了敏捷软件开发的特点——简单与快速反馈。不要想得太多了,活在今天的格子里,因为你永远不可能预知今后会发生什么。所以,做今天的设计,解决今天的问题,完成今天的重构,让明天见鬼去吧。要知道,简单对于我们是多么的重要。当我们的大脑开始思考各种复杂的问题时,就开始充血,然后就是梦游,最后的结果就是顾此失彼。既然如此,我们为何不选择一种更加简单的生活方式呢?

非常遗憾的是,很多时候我们不能选择这种简单的生活方式,因为我们害怕明天,害怕明天会出现那些我们处理不了的业务场景,因此我们开始过度设计。我不是批判我们不应当有预见,预见性设计与过度设计往往就是一线之隔。有限的预见是可以的,但不要想得过于遥远。当明天真的需求变更了,我们现在的设计不能满足了,怎么办呢?没什么大不了的,因为我们有重构。通过安全而平稳的重构方法先重构我们的系统,使之可以应付那个需求,然后再添加代码,实现新需求。这个过程被称为“两顶帽子”:一顶是只重构而不新增功能,一顶是增加新的功能实现新需求。正因为如此,我们在设计时思考当下就可以了。

另外一个问题就是及时反馈,落实到此地就是及时测试。只有测试通过了,此次重构才算成功,我们才能继续往下重构,否则我们必须还原。从这里我们不难看出,重构的周期是多么的重要。在我以往的重构工作中,一次重构的周期也就在10分钟到1小时。重构的周期越长,说明你考虑的问题越复杂,最终出错的概率也就越大。所以,我们一定要习惯“小步快跑”的工作方式,让自己只活在当下。

说了那么多重构,相信一定有一个疑问开始在你脑中萦绕。既然系统重构对于客户来说是透明的,客户完全感觉不到它的存在,毫无疑问,它对于客户来说就是毫无价值的。这下疑问就来了:既然重构对于客户来说就是毫无价值的,我们做它还有什么意义呢?要说明白这个问题,我们需要首先谈一谈软件修改的四种动机。

本栏目更多精彩内容:http://www.bianceng.cnhttp://www.bianceng.cn/Programming/project/

时间: 2024-09-12 12:27:47

重构连载之大布局与小步快跑的相关文章

中原啤酒鏖战 金星小步快跑3至5年实现上市

中原,啤酒鏖战. 啤酒产销大省河南,长期以来并未引起啤酒巨头兴趣.2007年,河南啤酒产销规模已居全国第二,仅次于山东.2010年以来,华润雪花.燕京啤酒突入河南市场,矛头直指国内第四大啤酒生产商金星啤酒大本营. 继华润雪花2700万收购河南悦泉啤酒后, 燕京啤酒已投资2.27亿元收购了河南第三大啤酒厂商河南月山啤酒.与此同时,11月2日,百威英博啤酒携27亿元巨资,在新乡市分期建设百万吨啤酒项目.百威母公司AB公司.日本麒麟啤酒曾向金星啤酒抛来橄榄枝,但困于体制,"姻缘"作罢. 目前

小步快跑挤进前三 海信发布2015年国际目标

美国当地时间1月7日 下午,鉴于Hisense在国际舞台日趋活跃,CES举办方邀请Hisense向100多家各国媒体记者举办了新闻发布活动. 海信集团http://www.aliyun.com/zixun/aggregation/22329.html">国际市场副总裁林澜.集团首席科学家黄卫平轮流演讲. 林澜博士在以"为什么是海信"的演讲中表示:世界彩电格局正在发生一些惊人的变化.一是电视向移动平板延伸给传统彩电企业带来的惊恐.二是显示技术进展缓慢却应用崛起;三是日系彩

360搜索与微软必应共同基因 开放创新 小步快跑

中介交易 SEO诊断 淘宝客 云主机 技术大厅 近日,CNZZ最新监测数据显示,6月9日,360搜索市场占有率单日突破17%,达到17.18%.无独有偶,国外媒体报道指出,今年5月份,微软必应(Bing)在美国搜索市场的份额持续增长,已达到17.4%.笔者进一步分析发现,两者相近的不仅仅是搜索市场的份额,在产品发展模式方面,两者也有诸多共同的基因. 目前,必应和360搜索均为各自国内的第二大搜索引擎,扮演着打破市场垄断地位的重要角色.ComScore报告指出,尽管必应5月份市场份额较4月仅增长0

手机QQ将上游戏中心 小步快跑拼微信

中介交易 SEO诊断 淘宝客 云主机 技术大厅 CJ张灯结彩,海天盛筵,showgirl尽是搔首弄姿,眉目传情,手游行业一片亢奋.但最大的变数--手机QQ和微信,都没有凑热闹,而是推迟了大动作. 我从腾讯内部得知,手机QQ即将在下一版本(4.2.1)中加入游戏中心,原计划在本周一(7月22日)上线,不过目前被继续推迟.微信游戏中心也依旧吊着大家的胃口.之所以都迟迟不来,除了有继续优化产品的考虑,也和马化腾要求手机QQ.微信和互娱三方对齐游戏信息对外公布的时间点,有一定关系. 回到本文重点,和大家

贵阳“小步快跑”搭上云计算的早班车

ZDNET至顶网CIO与应用频道 10月13日 人物访谈(文/王聪彬):山中有城,城中有山,绿带环绕,森林围城,风光旖旎的贵阳是中国首个国家森林城市以及循环经济试点城市. 在发展上贵阳一直都遵循着自身特质,"大健康"战略就是其中之一.针对大健康贵阳选择惠普作为合作伙伴,来构建数据中心并部署惠普Helion云平台,以及在其上使用大数据等应用,帮助贵阳在云计算.大数据纷纷落户各地的同时,可以小步快跑的赶超其他城市. 天时.地利.人和的合作 贵阳以及贵州省的发展主要基于两大举措,第一,大健康

英伟达初尝移动市场甜头 黄仁勋小步快跑想称霸

押宝移动处理器的英伟达终于从财报中闻到了蛋糕的香味.     11月10日,英伟达发布了截至今年10月30日的2012财年第三季度收入情况.该季度销售额达10.7亿美元,同比增长26.3%:净利润为1.783亿美元,同比增长110%:毛利率为52.2%,高于去年同期的46.5%,连续五个季度创下历史新高.      令英伟达感觉神清气爽的原因是,它们及时加大了对于智能手机以及平板电脑芯片生产的力度.据报道,其消费者产品包括移动处理器图睿(Tegra)芯片等在第三财季的收益上升了14%,达到1.9

ERP项目实施经历:虹信信息化的“小步快跑”

2006年10月,武汉的天气已经渐渐凉爽,但是在武汉虹信通信技术有限责任公司的大会议室里却弥漫着并不轻松的气氛.这里正在召开的是虹信公司信息化建设誓师大会,各部门的负责人纷纷签订了军令状.为了强有力推动信息化,虹信公司甚至特意在干部考核体系中增加"一票否决"标准,按照虹信公司总经理卢军的要求,所有干部只要是在公司信息化建设的过程中没有配合好,光凭这一项就可以在年终绩效考核中将其所有成绩都一票否定.虹信公司从上到下,对实施ERP项目下定了决心,高层领导更是打定主意绝对不理会任何部门或者任

“实物租赁”小步快跑

每到周末,广东邦家租赁服务有限公司(以下简称"邦家")设在广州繁华商业区的专线巴士,都会载着一批批原本逛街的顾客来到其近14000平方米的卖场.这些顾客也乐于像看楼盘一样,好奇地东摸摸,西看看.然而在这里,所有的商品只租不卖. 2008年底,邦家将这种早在欧美国家运作成熟的"耐用生活品"租赁模式引入中国,并获得由广州兆晋实业投资有限公司及香港美满投资公司共同投入的3亿元首期资金.作为投资人之一,广州兆晋实业投资有限公司总裁张悦表示,他所看重的,是邦家将来有可能开创中

天交所向OTC小步快跑图谋全国性股权交易市场

"半年来共为三家挂牌企业融资5000多万元,天交所为企业融资的效果是实实在在的".5月27日,在天津股权交易所第五家企业宝源股份的挂牌仪式上,天交所执行总裁钟冠华这样评价交易所半年多来的成绩. OTC(柜台交易市场)即全国非上市公众公司股权交易市场.据业内人士介绍,在OTC市场融资,企业股权流动将不再受资产规模.盈利能力的严格限制,更多的企业将通过OTC市场,直接融资快速壮大:同时,OTC市场将为各类产业投资基金.创业投资基金提供"无缝对接"的退出市场. 钟冠华表示