Questions tagged «code-reviews»

该标签用于有关代码审查和代码演练的问题。有关现有有效代码的评论,请访问http://codereview.stackexchange.com

5
分配给代码审查的时间
如果您正在执行代码审查 与实施相比,您在代码审查上花费了多少时间? 有多少更改需要进行代码审查? 您认为应该很多/应该更多吗? 是否有关于有效性的研究? [edit]谢谢大家的回答,很难为这样的问题选择“赢家”,其他答复中也有很多有价值的信息。

6
用图作为注释注释源代码
我编写了许多(主要是c ++和javascript)代码,涉及计算几何和图形以及此类主题,因此我发现视觉图表已成为解决问题过程中不可或缺的一部分。 我现在已经确定,“哦,如果我能以某种方式将手绘图附加到一段代码上作为注释,那岂不是太棒了”,这将使我回到自己从事的工作上,数天,数周,数月之前,并且可以更快地重新获得我的算法。 作为一个视觉学习者,我觉得这几乎可以通过每种类型的编程来提高生产率,因为简单的图表可以帮助您理解和推理任何类型的非平凡数据结构。例如图表。在大学的图形理论课上,我只能真正理解我可以实际绘制的图形表示形式的图形关系。 所以... 据我所知,没有IDE可让您将图片保存为代码注释。 我的想法是,我或其他人可以提出一些合理易用的工具,该工具可以将图像转换为base64二进制字符串,然后将其插入代码中。 如果转换/插入过程可以简化,这将使图表与实际代码之间的连接更好,因此,我不再需要按时间顺序搜索笔记本。更棒的是:IDE的插件可以自动解析并显示图像。从理论的角度来看,这绝对没有困难。 我的猜测是,我将需要花费一些额外的时间才能真正弄清楚如何扩展我最喜欢的IDE并维护这些插件,因此,我对一种可以进行相同解析和解析的代码后处理器感到非常满意。渲染图像并在浏览器或其他内容中与代码并排显示。由于我是一名JavaScript程序员。 人们怎么看?有人愿意为此付费吗?我会。但是我也许还会指出,无论我本人还是同龄人中的很多人愿意为这种事情付出代价,这种事情可能成功的唯一途径就是通过开源发行。


2
如何确定代码审查过程的有效性?
我们已经在组织内部引入了代码审查流程,并且看起来运行良好。但是,我希望能够随着时间的推移来衡量该过程的有效性,即我们是不是因为代码干净而没有发现bug,还是人们只是没有发现bug? 当前,我们没有有效的全自动测试过程。我们主要采用手动测试,因此我们不能依靠现阶段发现的缺陷来确保代码审查过程正常进行。 是否有人之前曾遇到过此问题,或对衡量代码审查的效果如何有任何想法?

5
让所有开发人员进行代码审查
我是7-8个开发人员团队中的软件开发人员。我们已经进行了一段时间的代码审查,并且随着时间的推移,代码质量也有所提高。 但是我最近注意到,与其他开发人员相比,一些开发人员被要求进行更多的代码审查。恐怕是因为他们态度灵活。 在我看来,这不是应该执行代码审查的方式:所有团队都应对此负责,并且不应因为愿意接受更改而选择代码审查者。 您如何处理团队中的这个问题? 您是否建立了选择代码审查者的规则? 您认为代码审查者应该花时间进行(良好)代码审查而获得报酬吗?以及如何获得奖励? 感谢您的回答/想法。

4
如何鼓励初级开发人员参与代码审查?
我目前是一名高级开发人员,下面有3个初级人员,并介绍了一个代码审查过程来帮助管理进入生产阶段的代码的质量。 我觉得这对我们所有人互相审查工作非常有益,但是在大约5周的过程中,我是唯一在工具(BitBucket)中发表评论的人。 我认为工作中存在部分文化问题,如果他们的评论有误,也许会自然而然地不情愿,但是有什么办法,我可以帮助下辈们更加自在地批判我和彼此的工作吗?

4
为什么面试官不要求申请人阅读一些代码?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 4年前关闭。 我一生中有十几次面试(我即将毕业),我想知道为什么只要求我阅读和解释一些代码。大约90%的工作主要是关于维护现有系统。IMO读取他人代码的能力是一项重要技能。 为什么面试官不检查它?* * 在我的朋友中,我是唯一被要求检查一些代码的人。

5
在代码审查中注释的最佳方法是什么?
每当我们一个人签入某项内容时,我的团队就开始使用坩埚/鱼眼镜头来发起代码审查。我们只有3个人,我们每个人都被鼓励审查代码并在我们认为合适的地方留下评论。 我的问题是,如何最好地在遇到问题的代码行上留下评论?我想表达自己的观点而又不显得刻板。 我不想看起来像是骑着马,说:“ 我一直在做这种事…… 而且我也不想看起来像是我在试图变得权威,说些类似的话。 “ 这应该以这种方式完成... ”但是我仍然需要弄清楚他们在做什么并不是很好。 澄清一下: 对于我应该评论的内容,这确实是一个很好的资源:代码审查是主观的还是客观的(可量化的)?,但我正在寻找如何对此发表评论。

7
代码审查真的可以在真正的敏捷环境中工作吗?
因此,我开始为一家大型公司工作,其中一家公司名称中有3个字母,他们试图成为敏捷公司,但是却有大量流程,我认为这些流程不是敏捷的。 让我最受困扰的是代码审查。我最后的工作是在一家初创公司中工作,我可以说这是我见过,曾经和/或从未听说过的最敏捷的开发团队。 无论如何,我的观点是,代码审查在UX / UI极端/强烈(想想Apple / Steve Jobs完美)的迭代或敏捷开发中浪费时间。也许有人在解雇我之前可以帮助您理解? 这是我的开发过程,也是我上次启动的过程。非常敏捷。 我们进行早期功能工作以对开发任务/待办事项进行排序。我们将模拟几个版本并将其呈现给用户,团队和市场,以获取反馈。然后,我们进行另一次样机迭代,以从上述相同的涉众获得一轮机会。然后,我们将工作分拆并开始。我们有一些里程碑和日期可以见面,但我们一直在努力。在此期间,我们没有任何代码审查。在我们开发的几周中,我们几次与利益相关者进行讨论,以了解他们是否仍然同意功能/功能/ UX / UI仍然是合适的目标。 随着8周迭代周期即将结束,质量检查人员开始进行测试,然后测试对象为alpha用户,最后是beta用户。但是在Alpha和Beta测试期间,开发人员将研究新功能和旧功能,对UI进行每日或每小时迭代更改,以改善UX。因此,此版本正在开发的功能可能会在过去四周内被更改3次以上,以进行改进和完善,或者添加一些微小的功能(例如,使组件更光滑或更智能)。有时这些更改可能是肤浅的,这意味着没有更改或修改任何CRUD操作,而仅更改所有UI。 因此,使用这种类型的开发过程(极端敏捷),代码审查不会浪费时间吗?这意味着如果我有另一个开发人员或两个开发人员来检查我的代码,但是由于所有UI / UX的改进,代码在发布之前又要更改3次,我们是否不浪费时间来检查代码的前3次?该代码/组件/ UI被废弃了吗? 我们在此过程中从来没有遇到过很多质量问题,是的,如果开发人员将所有知识都排除在外,但是我们总是找到聪明的开发人员来接管并接管。 是的,我们有很多测试人员,因为他们可能必须重新测试3到4次。另外,请不要挂断询问为什么所有的UI / UX都会发生变化...那就是事情的完成方式...那么那就是为什么该应用程序会赢得大量的UI / UX奖并且用户会因此而丧命应用程式。思考的过程是,如果我可以多花2个小时来改善某件事,那么我可以将其提高2%。用户会更快乐,这意味着更多的$或用户。是的,我们的用户可以继续更改应用程序,因为这是自第一天以来的工作方式,因此他们不会认为它是不好的还是负面的。 希望这篇文章不会那么夸张,但是我看不出代码审查是不是浪费。也许我们所审查的代码中所有代码的2%都有错误。每个版本的代码审查可能会发现3个错误。因此,最终每个开发人员每个版本需要40个小时的代码审查(4 x 40 = 160个小时),才能发现3到5个错误?无论如何,质量保证会发现3到5个错误的可能性是50%。每个开发人员花40个小时来添加新功能或改进现有功能会更好吗?

3
提交后可以使用哪些工具来促进代码审查?[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使它成为软件工程堆栈交换的主题。 5年前关闭。 我一直在评估许多代码审查工具(大多数是免费的),但它们似乎都旨在在提交补丁之前先审查补丁。这在Subversion的工作流程中并不完全适合,因此我一直在寻找能够更好地支持审查已提交修订的替代方案,而不仅仅是diff。有什么建议吗?我更喜欢免费或廉价的工具。

4
拉取请求很大时如何进行更好的代码审查?
免责声明:有一些类似的问题,但是在查看大型拉取请求时,我没有发现任何能特别解决您面临的问题的问题。 问题 我觉得我的代码检查可以通过更好的方式完成。我特别是在谈论大型代码审查,其中涉及20多个文件的许多更改。 捕获明显的本地代码问题非常简单。但是,了解代码是否符合业务标准是另外一回事。 我在遵循代码作者的思考过程时遇到了麻烦。当更改数量众多且分布在多个文件中时,这非常困难。我尝试着重于与特定更改相关的文件组。然后逐一查看组。不幸的是,我使用的工具(Atlassian Bitbucket)不是很有帮助。每当我访问文件时,即使经常证明它与当前检查的更改都不相关,它也会被标记为可见。更不用说一些文件应该被多次访问,并且它们的更改要逐个进行审查。当您走错路时,要返回相关文件也不容易。 可能的解决方案,以及为什么它们对我不起作用 通过提交复审拉取请求通常可以解决大小问题,但是我不喜欢它,因为我经常查看过时的更改。 当然,创建较小的拉取请求似乎是一种补救方法,但这是正确的,有时您会收到一个大的拉取请求,必须对其进行审查。 您也可以整体上忽略代码的逻辑方面,但这似乎很有风险,尤其是当代码来自没有经验的程序员时。 使用更好的工具可能会有所帮助,但我没有找到。 问题 您的代码审查是否遇到类似的问题?你如何面对他们? 也许您有更好的工具?

1
如何在GitHub拉取请求上进行同行评审?
我们正在从Bitbucket迁移到GitHub,而我们正在努力的一件事是对等代码审查,在Bitbucket上的运行非常顺利,如下所示: 作者打开了一个拉取请求(GitHub:相同) 作者将他/她的同事添加为审阅者(GitHub:??在这里与多个受让人苦苦挣扎) 评论者: 批准带有绿色复选标记的PR (GitHub:??) 添加了评论(GitHub:相同) 创建轻量级任务(GitHub:如果- [ ]PR描述中使用了语法,则类似;可耻的是,它不适用于任务) 有一个PR列表,我可以一目了然地看到它们,可以进行审查,可以合并,还需要进一步关注(GitHub:??) 我应该指出,我们要尽可能避免使用第三方代码审查工具,并希望通过某些解决方法保留在原始GitHub上。

5
谁应该进行代码审查?
在我公司中,大多数架构师都会进行代码审查。他是一个非常有经验和聪明的软件专家,因此他非常擅长。当开发人员进行代码审查时,他们不会做一半。我们试图让开发人员进行更多的代码审查,但是代码审查的质量并不理想。我们使用Scrum作为开发方法。 但是,对于当前系统,存在两个问题: 建筑师成为瓶颈 开发人员不对代码和体系结构的质量负责(这会导致各种问题)。 我们如何解决这些问题?我们应该更改代码审查的对象吗?

6
我为什么要在Try-Catch中编写所有语句?
我的公司负责人说,我必须在Try-catch语句中编写all,即我的所有代码。现在,我可以在这里理解“安全胜于遗憾”的方法了,但是,当创建标签,设置表格位置时,认为会有例外是不是太胆小。在这样的简单操作中,有时会出现异常。

9
代码审查有什么好处?[关闭]
按照目前的情况,这个问题并不适合我们的问答形式。我们希望答案得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 7年前关闭。 在我的团队中,我们不进行正式的代码审查。我们倾向于认为使用结对编程和经常旋转结对就足够了。 我们应该考虑进行正式的代码审查吗?有什么好处?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.