软件修改不可避免

修改代码的起因

四种:
(1)添加新特性;新需求需要实现(添加新的功能或者添加新功能并替换之前的功能)
(2)修正bug;
(3)改善设计;
(4)优化资源使用。

添加新特性与修正bug

对于程序员来说,可以统一看成是改变软件的行为。

行为:
行为对于软件来说是最重要的一样东西。软件的用户要依赖于软件的行为。用户喜欢我们添加行为(前提是新的行为确实是他们所需要的),然而如果我们改变或移除了他们原本所依赖的行为(引入bug),那么他们就不会再相信我们。
行为与功能:
行为包含功能、性能、可维护性等
功能,更多的是客户视角,满足客户目标

软件行为变迁类型:

  • 改变行为
    修改代码
  • 添加代码
    添加代码并调用它

【注】添加一个方法并不会改变代码的行为,除非我们以某种方式调用了该方法。

改善设计

改变既有软件的结构和组织,以便更易于维护。
重构,进行一系列的结构上的小改动,并通过测试的支持来使得代码的修改更容易着手。
重构过程中不应当有任何功能上的改变,行为可能存在改变。

优化

通常指时间或资源使用相关的修改

重构与优化异同点:
不同点:重构改变程序结构,优化通常指修改程序的性能或资源使用情况
相同点:在改变某些东西的过程中保持软件的功能不变。

综合

修改程序可能带来的改变:
结构、功能及资源使用
在这里插入图片描述

行为改变情况,无论哪种修改,不变的更多
在这里插入图片描述

修改可能存在的问题:
不知道在修改的过程中哪些行为存在被连带改变的风险。

保留既有行为不变是软件开发中最具挑战性的任务之一。

减少修改风险

修改前需考虑的问题:
(1)我们要进行哪些修改?
(2)我们如何得知已经正确地完成了修改?
(3)我们如何得知没有破坏任何(既有的)东西?

修改是不可避免的,我们应该努力的去修改

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值