软件的可维护性

原创 2004年07月02日 19:49:00

软件要怎么做才有一个好的维护性呢?

这个问题的标准答案可能没有,因为涉及的概念很多,面很广。

由于我现在从事的工作有一部分涉及到别人的代码的维护,所以,我说说我的看法

1。首先要有一个好的框架,或许我现在也不大明白什么是框架

      比如,你的程序需要放访问一个链表,但是所涉及的操作是由两个线程来操作,那么你的数据需要加锁

      如果你有这几个数据经常在一起被访问: int  number,int id,int name ; 所涉及的操作也是对这几个数据都要产生影响,建议你将它写成结构。

       从大的方面来说: 假如你要考虑你的类的设计,涉及的操作和数据,和数据存取的形式,以及需要重载得操作。

       我看到了一个程序:       

         for(i=0;i<LENTH;i++)

          for(j=0;j<WIGHT;j++)

           m_List [i][j] = new CMyListBox;

我个人觉得这样的代码给维护的工作带来了很大的麻烦,如果能够写成new CMyListBox[WIGHT]这样的形式的话会好得多,因为在你的传递过程中,如果采用了引用的方式,很容易不知觉中将内存释放,而在你的程序推出的时候很难找这个问题。

2。应该多写函数来控制

     有一句话我比较赞同,能够自己控制你程序的流程的越多越好。

     如果维护一个一个的变量,你自己也会很麻烦。如果能够写成函数的形式,一个功能功能的测试的话,对你自己来说也是很方便,同时这也是C语言的方式。(至少可以有功能块得测试)

3。小的东西是能够用函数来代替,如果是一个大的东西,包括数据和操作。C++给我们说了,要用类。但是类如果写得比好,封装成动态库更好。假如你的程序发布了过后,可以不改你的接口,而只需要将动态库换掉

好像也不用编译:)

4。程序的书写,希望能有自己的方式。但是应该有一个让人容易明白的方式,至少要明白作者,功能、时间、如果算法比较复杂,请详细说明。

5。变量的书写。虽然变量的命名很随意,但是希望能够参照一个好的方式。比如

    bool  m_bPlay  ; 和bool m_play ;或则bool m_flag ;意思是要能够说明变量的用途

 

今天吃饭吃到了虫,郁闷,错误指出,谢谢!

    

 

谈谈软件的可维护性问题

前言       很多包括自己在内的开发人员都会经常去借用(我们不用剽窃这个词了!呵呵)开源代码进行二次开发;或者在前辈的遗留代码下,继续修修补补。这种经历往往并不像看起来那么简单——有时看懂,进而修...
  • kanghua
  • kanghua
  • 2008年12月30日 17:08
  • 15856

程序的可维护性和可扩展性

可维护性是指当需要修改程序的某个模块时,对其他模块的影响和修改的代价;可扩展性是指当需要为程序添加新的功能时,对其他模块的影响和添加的代价,可以从下面几个方面提高程序的可维护性和可扩展性   代码...
  • dongye2016
  • dongye2016
  • 2017年08月27日 02:13
  • 668

《JAVA与模式》学习笔记(一)——软件的可维护性与可复用性

《JAVA与模式》学习笔记(一)————软件的可维护性与可复用性 作者:孤独萤火虫 对于面向对象的软件系统设计来说,在支持可维护性(Maintainability)的同时,提高系统的可复用性(Reus...
  • fireflyqt
  • fireflyqt
  • 2004年11月08日 15:34
  • 776

软件工程-软件的可维护性

本文参考自张海藩老师和牟永敏的《软件工程导论》 软件可维护性的定义: 维护人员理解、改正、改动或改进这个软件的难易程度。 决定软件可维护性的因素: 可理解性: 定义:表现为外来读者理解软件的...
  • time_hunter
  • time_hunter
  • 2013年12月17日 22:00
  • 749

软件的可维护性与可复用性

我们常说一个好的系统设计在于其有较高的可维护性和较高的可复用性。其实可维护性与可复用性是两个独立的目标,并不总是方向一致。         软件的维护就是软件的再生。一个好的软件设计,必须能够允许新的...
  • zsh2050
  • zsh2050
  • 2015年01月10日 16:01
  • 1294

软件的可维护性问题知识与分析

前言        很多包括自己在内的开发人员都会经常去借用(我们不用剽窃这个词了!呵呵)开源代码进行二次开发;或者在前辈的遗留代码下,继续修修补补。这种经历往往并不像看起来那么简单——有时看懂,进...
  • huwei2003
  • huwei2003
  • 2014年08月22日 16:28
  • 4166

软件的可维护性和可复用性

本文转载自http://wasiker.javaeye.com/blog/232174软件的可维护性和可复用性关键字: 设计模式 可维护性 可扩展性一般来说,一个易于维护的系统,就是复用率较高的系统;...
  • phenixIII
  • phenixIII
  • 2009年06月21日 12:13
  • 3817

可维护性与可扩展性的区别

Maintainability In engineering, maintainability is the ease with which a product can be maint...
  • Eric_Hxy
  • Eric_Hxy
  • 2015年08月07日 09:54
  • 1498

《java与模式》笔记(一) 软件的可维护性和可复用性

ξ 3.1 软件系统的可维护性☆ 导致一个软件设计的可维护性较低,也就是说会随着性能要求的变化二“腐烂”的真正原因有四个: ① 过于僵硬 加入一个新性能,不仅仅意味着建造一个独立的模块,而且因为这个新...
  • plusir
  • plusir
  • 2006年08月05日 12:27
  • 1236

衡量软件可维护性的七个特性

一.可理解性:可理解性表明人们通过阅读源代码和相关文档,了解程序功能及其如何运行的容易程度。 二.可靠性:可靠性表明一个程序按照用户的要求和设计目标,在给定的一段时间内正确执行的概率。 三.可测试性可...
  • lidoublewen
  • lidoublewen
  • 2009年05月12日 13:45
  • 2392
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:软件的可维护性
举报原因:
原因补充:

(最多只允许输入30个字)