工作感想之项目重构

来源:互联网 发布:mac安装raysource 编辑:程序博客网 时间:2024/03/29 04:48

     背景:毕业半年了,大部分的时间里都在进行的是软件重构,软件集中在windows平台下,使用的是vc++6.0编译器进行编码。

     正文:测试为先,持续重构的软件开发思想已经得到越多人的欣赏,这无疑有利于写出健壮的单元代码并有利于代码的重构,同时,写好注释尤为重要。我写注释里面一般包括功能,特殊参数来源。

    一、浅谈重构

重构(Refactoring)是指在不改变软件现有功能的基础上,通过调整程序代码改善软件的质量、性能,使其程序的设计模式和架构更趋合理,提高软件的扩展性和维护性。软件重构主要用于提高软件质量、对构建中、对完成的软件进行维护修改。现在的项目大多放弃了对代码的前瞻性,因此,对软件的重构就尤为重要。

二、重构优势

  重构,必然要对单元代码、数据来源等有详细的理解,所以,这对于新生来说能够快速积累公司使用的技术积累和编程习惯。

三、重构的目标

1、持续偏纠和改进软件设计。重构和设计是相辅相成、彼此互补的。有了重构,仍然必须做预先的设计,但是不必是最优的设计,只需要一个合理的解决方案就够了,如果没有重构、程序设计会逐渐腐败变质。重构就是整理代码,让所有带着发散倾向的代码回归本位。

2、使代码更易为人所理解。

3、帮助发现隐藏的代码缺陷。重构代码时逼迫你加深理解原先所写的代码,通过重构代码可以加深对原设计的理解,发现其中的问题和隐患,构建出更优的代码。

4、从长远来看,有助于提高编程效率。改善设计、提高可读性、减少缺陷是为了稳住阵脚。良好的设计是成功的一半,停下来通过重构改进设计,或许会在当前减缓速度,但它带来的后发优势却是不可低估的。

四、在软件开发中重构的重点

1、重构与设计

重构,仍然先做设计,但是不必一定找出正确的解决方案。只需要得到一个足够合理的解决方案。在实现这个初始解决方案的时候,对问题的理解也会逐渐加深,可能会察觉最佳解决方案和当初设想的有些不同。采用重构将日后的修改成本不再高昂。

重构可以通过一条不同的途径来应付变化带来的风险。可以带来更简单的设计,同时又不丧失灵活性,降低了设计过程的难度,减轻了设计压力。

2、重构与设计

项目从开始就要注意软件质量和性能的重视与提高。

五、重构需要注意的地方

有时候不应该重构,比如应该重新编写所有代码的时候。有时候既有代码实在太混乱,重构它还不如从新写一个来得简单。

重写(而非重构)的一个讯号就现有代码根本不能正常运作。可能只是试着做点测试,然后就发现代码中满是错误,根本无法稳定运作。重构之前要保证代码必须能够在大部分情况下正常运作。如果项目已近最后期限,应该避免重构。此时,重构过程赢得的生产力只有在最后期限过后才能体现出来。如果项目已经非常接近最后期限,不应该再重构,因为已经没有时间了。多个项目经验显示:重构的确能够提高生产力。如果最后没有足够时间,通常表示早该进行重构。

六、重构需要注意的地方

项目重构,对于一个不熟悉的人来说,一些辅助工具软件是必须使用的,正如我所说,对于一段代码,更多的要了解其功能、数据来源,在此我推荐一款软件<Source Insight>