Android基础第十天 | 青训营笔记

129 阅读2分钟

这是我参与「第四届青训营 」笔记创作活动的的第10天

成为一名好RD,你该具备的研发素养

01 代码质量

1.1 代码问题致损严重

image.png

1.2 优秀代码的特质

image.png

image.png

1.3 代码可维护性原则

image.png

image.png

1.4 圈复杂度的概念

image.png

image.png

1.5 小结

  • 小小的代码错误,可酿成巨大的损失

  • 优秀的代码可信赖、易维护、Bug少

  • 面对庞大的代码需遵循可维护性规则

  • 圈复杂度作为度量工具的计算和用途

02 代码评审

2.1 CR的目标

image.png

2.2 CR的形式

image.png

2.3 CR关注的点

image.png

2.4 小CR的好处

image.png

2.5 如何处理不同的意见

image.png

2.6 CR的一个实例

image.png

2.7 小结

  • CR能前置地发现代码质量问题

  • 将CR做得小点能加快评审效率

  • 谦逊坦诚面对不同的评审意见

03 重构实践

3.1 技术债的产生和应对

Technical Debt,本应采用最佳方案,但妥协了,从而给未来带来了负担。

image.png

应对:

image.png

3.2 重构的概念

对软件内部结构的一种调整,目的是在不改变软件可观察行为的前提下,提高其可理解性,降低其修改成本。

image.png

3.3 Code Smell

代码的坏味道,预示着即将变坏。重构就是不断对抗Code Smell

3.4 重构方法的运用

image.png

image.png

image.png

image.png

image.png

image.png

3.5 重构案例

image.png

3.6 小结

  • 代码中常有技术债,理解它,处理它

  • 重构是在有限范围内运用一定的方法

04 代码上线

4.1 分支开发模式

image.png

4.2 持续集成概念

Continuous Integration,CI,

将代码频繁的集成到代码仓库中持续集成并不能消除Bug,而是让它变得容易发现和修正

image.png

4.3 灰度发布

逐步扩大使用的用户群体,1%→10%→30%→60%→100%

image.png

4.4 AB实验

干扰因素太多,代码直接上线无法量化收益,指标波动无法归因

image.png

05 总结

  • 理解圈复杂度和代码质量的重要性

  • 代码评审能够前置的发现代码问题

  • 重构是限定范围和方法的改造技术

  • 代码需要持续得到验证才能够上线