owenzhang的博客

如何做组件升级类的需求

字数统计: 500阅读时长: 1 min
2018/12/16
loading

组件升级,大多数程序员都觉得很简单,直接给个新的包,或新组件的地址,让大家都去下载不就可以了。但是实际这里面还是有很多学问,和需要考虑的地方的。

要考虑业务推广的难度,以业务方来看,不要没事改这改那,对业务没有什么帮助,相反到有所风险,而且还增加了工作量。

如何做组件升级需求,都是围绕着如何减轻业务顾虑来做的。

听说Facebook的最简单粗暴,谁升级组件,谁就负责把别人的代码改好。

要保证api尽量向前兼容

如果api有同样的功能,但是新版本变了,会让业务很难接受,因为本来已经写好的东西,又要重新修改。或者是为了使用一个新功能,但是让业务要重新改动和此不相干的大部分代码,这些都是不可取的。

代码要经过充分的测试

这是最基本的,特别是组件类的需求,是最底层的东西,要质量有保证。否则帮助推广升级方,还导致业务不稳定,以后再让人家升级就难了。

  1. 最好是做成服务,或者是分离式组件,能够无感知,业务代码一点不动就升级。
  2. 业务只需要重新编译,就能够提高性能,有新功能。
  3. 新功能调用新函数,或者加几个参数就能行。
  4. 新旧两个版本可以在一套代码中使用。
  5. 干掉就代码,只能一下子切割掉旧的用新的,没有前后对比。

总结

组件升级要考虑到业务方的更换成本, 业务最关心的是稳定性和工作量,要让他们消除这些顾虑,所以要做很多工作,而不只是把组件完成,升级的事情推给业务方。

CATALOG
  1. 1. 要保证api尽量向前兼容
  2. 2. 代码要经过充分的测试
  • 总结