前言突然想说说开发流程。可能在新的环境下对之前的整个开发过程有一些思考。你在想什么?在我的理解中,高效的开发过程应该是什么样的?自己理解的开发流程做了四年,又做了三年互联网开发,自然对整个软件开发流程有一些想法和理解。我理解的开发过程应该有以下几个特点:尽可能在开发时间周期的早期暴露问题(没有什么是完美的,尽可能想一些措施来辅助)养成良好的开发习惯toavoidMistakes如下图所示,是我自己理解整理的一套开发流程:上图中,随着我们在开发过程中的推进,出错的概率集中在尽可能正面。另外,图中淡紫色的图标是我目前开发过程中不存在或者不明显的地方。需要单独讨论的内容1.技术审评为什么要进行技术审评?当然这里需要进行技术评审的项目应该是一些规模较大或者规模较大的项目,具体的评审标准还要看环境。技术评审的目的,一方面是开发者与具体技术实现负责人之间同步信息的过程;另一方面,负责人或相关负责人对技术方案进行评价。相关人员是对整个系统了解最透彻的人,避免以后项目开发完成或上线后才会出现一些比较大的问题。终于通过了技术审核,相应的开发人员就可以连夜写代码,安心写代码了吧?2.代码建模Modeling并不是我第一次讲了。具体的例子也可以在我之前的文章中找到。为什么我如此强调建模?因为经过建模(即抽象)后写出的代码,往往思路清晰,可扩展性强。3.习惯性个人diff代码①commit代码前diff代码 ②merge代码前diff ③多人上线前diff代码上面是我肯定会diff代码的场景。目的很简单。一:错了吗?提交代码 2:简单代码审查4.代码审查代码审查最好的时间一般是在开发完成或者联调阶段,因为这段时间业务代码基本都是稳定版本。至于这次之前,代码不稳定;至于过了这个时间,review之后修改代码(浪费测试时间)的成本会比较高。5.上线前多人diff代码的目的很简单:与每个参与的开发人员一起检查每一行代码的变化,防止错误的提交被发布到网上。6.上线流程这个一般出现在多项目上线的情况下,涉及到多项目发布依赖,为了保证最终的系列上线顺序正确。将上线推广权集中在一个人手中,整理核对上线顺序,最终完成上线。7、异常监控比如后台系统,观察系统上线后3xx、4xx、5xx异常日志曲线是否有突然上升的趋势,判断我们上线是否正常。扫描下方二维码关注我的技术公众号,及时为大家分享我的原创技术
