本周工作思考
- Code review的思考
- 目前最大感受是时间不够用,在google的工程实践中建议,代码审核要尽快完成,但是实际工作中特别像是私信和测评2.2这样业务复杂的较大项目,2个小时完全review完,确实很有难度,我有着这样的想法,较大项目的代码提测时,详情代码提交的伙伴用半个小时以内串讲一下整个实现思路和功能,然后再具体的做cr,这样做的好处是在做好cr和花费时间之间做一个折中,让code review对代码深入的理解,这样才能保证cr更有效,保证代码库中代码质量是持续改进的,而不是越来越来糟糕;
- 在代码质量和设计守护是上我们必须秉持长期主义,一开始就把代码的设计和实现做的足够好,在代码扩展中,保证必要的重构,从编写代码的一开始就消除本可以避免的重构;
- 随着业务的深化迭代,我越来越觉得前端代码的可扩展性,易理解性及稳定性是最重要的三个开发原则,并且它们的权重是,可扩 展性 > 易理解性 >稳定性, 可扩展性和稳定性两者之前在开发过程中有时候会纠结,该以倾向那个,在review私信的代码时,我看到兴旺在私信列表实现时,我想到一些我自己的实现,但是我比较了一下,似乎兴旺的实现在当前更合适一些,因为当前的实现比较简洁,用常规的做法,比较容易理解和实现,也覆盖住了当前需求,就没必要为了追求高性能的原则做其他的设计,这里不是说性能不重要,当我们没有找到一个既有较好性能又有较好的扩展性的方法,就先放弃为追求性能而造成扩展性差的方案,基于长期主义,可以持续优化的方式才是正确的,不要从一开始就减少了可持续优化的可能性, 我们在设计时应该优先考虑这三个原则,如果有些设计很富有巧思构想,却和这三条原则相违背,建议大家再想一想,再讨论一下;