龙源期刊网httpwwwqika
comc
浅谈计算机软件重构技术
作者:肖镞赵伦来源:《数字技术与应用》2012年第06期
摘要:本文阐述了软件重构技术的现状,研究意义和发展前景。
关键词:软件重构原型开发简化复用测试
中图分类号:TP274文献标识码:A文章编号:10079416201206020202
1、软件重构的定义
软件维护最初最贴切的形容就是“打补丁”,所有的维护工作采用的都是一种消极但快速的方法。如果发现系统有问题,维护人员就快速找到这个问题,然后修改源代码,解决这个问题。如果要添加一个新的功能,那就找到一个相似的模块,修改代码以后放进去。这样反复多次之后,系统变得越来越臃肿,越来越难于理解,维护也越来越艰难、越来代价越高。人们期望解决这一问题的根本办法,于是软件重构技术应运而生。通过这种技术,使得编码更加谨慎合理,编码时如果非常小心,则代码会具有良好的形状和味道,在修改添加代码前,通过查看代码的形状和味道来决定是否进行更新。如果代码不容易被理解,则必须重构代码以使得维护变得容易,再进行相应的扩展和更新。
软件重构是指在不改变软件的功能和外部可见性的情况下,为了改善软件的结构,提高清晰性、可扩展性和可重用性而对软件进行的改造。简而言之,重构就是改进已经写好的软件的设计。也就是说,改进后的软件其原有的功能和行为都不改变,改变的仅仅是程序内部的编码。重构是在源代码级别上进行的,目的是使原有的代码在重构后具有良好的程序结构。
2、软件重构的意义
计算机技术的发展带来了全社会的变革,人们的生活对计算机的依赖越来越强,所使用的软件也越来越复杂,对开发软件所使用的技术也要求越来越高。面向对象开发方法等有利于软件利用的方法和技术得到了广泛的运用。但同时也显示出一些弊端。为了开发出使用方便,利于维护的软件系统,软件开发人员希望把初始系统设计得尽可能的完美、灵活、具有良好的可扩展性。这不仅要求软件开发人员具有较高的软件设计能力,而且,再完美的设计也不可能完全适应未来的需求变化。解决这一问题的方法是软件工程中的原型开发方法,在原型开发方法中,系统开发人员首先快速开发出一个系统原型提供给用户使用,通过用户在使用过程中的不断反馈来对系统进行修改直到最后开发出系统的成熟版本。软件扩展是在软件重构的基础上完成的。在需要扩展时,使用软件重构方法和重构工具,采取提取抽象数据类型、提取接口等技术对代码结构进行改造,以利于软件的维护、r