如果您的公司或项目强调(或至少欣赏)可以在项目中重复使用和共享的代码和组件的开发,那么您需要做些什么“社会工程”才能促进重用代码?
根据我的经验,简单地声明为“可重复使用”的代码或组件将不会被重复使用,除非该代码有人支持或传播它。否则,人们根本就不会知道它。
如何确保共享组件或可重用代码在您的组织中有效?
答案 0 :(得分:2)
想到了几个想法:
另一个很好的策略是找出组织中其他人在他们的项目中有什么代码,提供一些功能(谈论它有多棒,以及你真正想要的)在你的项目中使用它)。一旦他们的代码被添加到共享模块,您通常最终会成为共享库的+1粉丝,并且有一位福音传道者帮助您销售这个想法。请记住,人们通常只会在他们受益的情况下做事 - 所以让他们看起来很好并且他们的代码看起来很好,这对他们有利。
答案 1 :(得分:1)
在我的组织中,我们有管理帮助来促进共享库的创建。我们还招募新员工使用它。
然后,我们提供好的代码,每个人都必须审查这些代码的有用性和完整性。这是集团购买的地方。
此外,我们有一个非常强大的文档化流程,用于分支共享库以便在Visual Studio中使用。提示:我们使用svn:external属性来管理来自同一文件夹结构中不同存储库的检出。潜在的共享代码在被提升到主干之前首先存在于分支中。
答案 2 :(得分:1)
我发现让人们想要使用可重用代码的最好方法是向他们展示如何按照您的意图使用它。使用您的库提供示例程序。将其保存在源代码存储库中,就像任何其他项目一样。在可重用库更改时,保持示例程序的记录和更新。
答案 3 :(得分:0)
就个人而言,我尝试演示我认为有用的代码并在使用它之间进行比较,而不是使用它来尝试显示为什么它会更好。通常这发生在每周开发会议期间。
我同意真的需要有人传福音并推动新方法的采用,我发现许多开发人员在推销自己或者他们所做的事情方面做得不那么好,所以值得研究这些技能并推动其他人做同样的事情,以身作则。
答案 4 :(得分:0)
这可能有点以java为中心;但是在公司maven存储库中发布二进制和源会对可见性产生奇迹。它让其他人乐于使用你的代码;)我们使用大量的开源工具,发现读取源代码的现成可用性确实是一个关键特性,特别是当它可以直接集成到IDE中时。我们真的希望来自内部项目!我想知道我们在maven之前是如何管理的? (即使蚂蚁现在可以使用maven repo)
答案 5 :(得分:0)
几年前在一所研究生班上,我做了一个关于基于网络的存储库的案例研究,程序员可以存放他们的代码以便重复使用。这不适合我的工作场所,而是适用于拥有数千名科学家的实验室。工程师没有任何其他集中的共享手段。