我一直认为,优秀领导者的标志之一就是可以在每个开发周期中根据需要提供额外的培训。对我来说,这意味着我不仅要编写自己的代码或审查代码,还要与更多的初级开发人员坐在一起,与他们配对编程,以帮助他们避免遇到我踩到的地雷。
主要是,我没有幻想我们的主要目标是教育-并非如此。无论您是高级,领导还是初级开发人员,目标都不是您的理想。目标始终是向客户交付质量代码。最好按时,按预算做他们想做的事。但是,我确实意识到我不可能自己完成所有工作,因此我有责任帮助所有人帮助团队成功。这意味着当培训机会出现在自然界中时,就应予以承认。
因此,对于您的询问是否是初级培训的场所的问题,我不得不说,在这些期间出现可教导的时刻并不少见。嘿,您将不得不处理您的第一次合并冲突,让我们在审查后再进行讨论。哦,瞧,您的DAO没有包含任何单元测试,我们将把您的评论推迟到有机会介绍这些新方法之前。您为什么认为在此财务计算中使用双原语比使用BigDecimals更好?是的,这并不少见。
因此,尽管我会说这肯定会发生,但是显然这不是请求请求的主要目标。我也不认为没有期望Pull请求中的代码已经准备就绪。通常不是。
如果您在gitflow样式分支策略中使用feature和release分支,那么您的拉取请求将更像是release候选。还没准备好生产,而是更接近它。您知道您的代码可以编译(正确),并且您有足够的测试能力可以断言它符合用户故事的目标。而且,由于您已经在开发环境中运行了多个集成测试,因此,如果要求您演示您的更改,那么您将准备好进行演示,在进行PR审查时将进行更改。
最终,我认为我们应该在PR审查期间提供帮助,但这种帮助并不围绕通用编码。相反,它与准备建议的代码以使其包含在生产质量代码的工作库中有关。PR为开发人员提供了一个机会,以证明他们对PR中包含的每项更改都有正当理由并有扎实的把握。即便如此,即使在我们通过单元测试,演示和大量问题进行权衡之后,也仍然无法预期所提议的更改已准备就绪可以投入生产。
毕竟,代码已关闭。但是随后,我们让质量检查小组对其进行酷刑。