代码质量之可维护性

 
<span style="font-weight: bold;">我的心态变化</span>
c = a 
a = b 
b = c 
后来我我从师兄那学到了下面这段代码,觉得写的比我之前的更漂亮:
a = a + b 
b = a - b 
a = a - b 
最后参加工作了,看到很多别人的代码,最后又觉得最漂亮的代码是这样的: 
c = a 
a = b 
b = c 
请问大家,为什么我的心态有这样的变化?
 
<span style="font-weight: bold;">软件开发的现实</span>
<ul style="direction: ltr; unicode-bidi: embed; margin-top: 0in; margin-bottom: 0in;" type="disc"><li style="margin-top: 0; margin-bottom: 0; vertical-align: middle;"><span lang="zh-cn">一个软件生命周期中,</span><span style="font-family: calibri; font-size: 10.5pt;" lang="en-us">80%</span><span lang="zh-cn">的时间和精力花费在维护阶段。</span></li><li style="margin-top: 0; margin-bottom: 0; vertical-align: middle;"><span>几乎没有任何一个软件,在其整个生命周期中,均有最初的开发人员维护。</span></li><li style="margin-top: 0; margin-bottom: 0; vertical-align: middle;"><span>几乎没有任何一个软件,在其整个生命周期中,它的文档与代码是保持同步的。</span></li></ul><span style="font-weight: bold;">场景再现</span>
<p style="margin: 0in; font-size: 10.5pt;"><span lang="zh-cn">有两种人,第一种人维护的是自己的代码,但是,随着时间的流逝,以前的关于系统的理解和记忆已经逐渐消失了,每次修改</span><span style="font-family: calibri;" lang="en-us">bug</span><span lang="zh-cn">或增加新功能时,要通过看文档、看代码来回忆当时开发系统的场景。</span>第二种人,代码不是自己写的,需要阅读相关文档和代码,为了弄明白某一处代码的意图,需要了解整个模块的逻辑流程,还要看相关需求和设计文档,但是很遗憾,这些文档都和实际代码不同步。

<span style="font-weight: bold;">影响可维护性的因素</span>
<span lang="en-us">1.</span><span lang="zh-cn">是否是同一个开发人员</span>
<p style="margin: 0in; font-size: 10.5pt;"><span style="font-family: calibri;" lang="en-us">2.</span><span lang="zh-cn">人的质量如何,技术功底,对业务领域的熟悉程度</span> 
落地措施
<p style="margin: 0in; font-size: 10.5pt;"><span style="font-family: calibri;" lang="en-us">1.</span><span lang="zh-cn">提高自身的质量,技术功底(面向对象、重构),熟悉业务,多与同事</span><span style="font-family: calibri;" lang="en-us">face to face</span><span lang="zh-cn">交流</span>
其实,维护软件最头痛的是,随着时间的流逝,以前的关于系统的理解和记忆已经逐渐消失了。每次修改bug或增加新功能,要通过看文档,看代码来回忆当时开发系统时的场景。
软件质量特性中最重要的我认为是可维护性,而可维护性的前提是可理解性。
<p style="margin: 0in; font-family: calibri; font-size: 10.5pt;"> <span style="font-weight: bold;">我们要理解谁?</span>
<span lang="en-us">2.</span><span lang="zh-cn">理解文档,信息只有被用心组织才能有更好的可理解性。</span>
<span lang="en-us">3.</span><span lang="zh-cn">理解代码,好的代码会自解释,会说话,坏的代码面目狰狞,五官发育不全,代码的可理解性是靠开发人员来控制的,是造一个天使还是一个怪物,全看我们的态度是怎么样的。</span>
 
可理解性强的代码不是一门技术,而是一门艺术。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值