如何使用IDE鼓励积极的开发人员行为?

时间:2009-12-01 09:49:56

标签: ide

IDE的目标是提高生产力。他们做得很好。重构,导航,内联文档,自动完成有助于极大地提高生产力。

但是:每个工具都是武器。同样的IDE有助于生成块代码。一些IDE功能是产生错误代码的邀请:代码生成,代码格式化工具,重构工具。

IDE过度使用往往会使开发人员与必要的细节隔离开来。你可以开始工作是一件好事,但在你职业生涯的某个阶段,你必须能够弄清楚如何开始一个过程。你可以忽略这个细节一段时间,最后它们对于编写一个有效的产品很重要(相对于那些在90%的时间内工作的东西)。

您如何鼓励使用IDE的其他开发人员的积极行为?这是一个与复制和粘贴一样古老的问题。

要获得正确的印象:开发者必须拥有最大的自由来调动他们的最大创造力和动力。他们可能会根据自己的需要使用IDE和所有相关工具。没有人应该对他们施加严厉的措施。我不想失去动力并迫使某人做某事。必须鼓励良好的行为。如果你做错了,它必须痒一点。与SO“接受率”指标(和声誉)在同一行。您可以忽略它,但如果遵守规则生活会更好

(解决方案应该在给定的环境中工作。您可以忽略评论,更改人员配备或更多教育作为潜在的解决方案。)

5 个答案:

答案 0 :(得分:3)

训练您的IDE,而不是接受它的训练。

按照您(或您的团队)的方式设置代码格式。哎呀,甚至在有意义的情况下禁用它。我从来没有见过IDE将这样的东西与标签和空格的合理组合对齐(其中\t显然是制表符):

{
\tcout << "Hello "
\t     << (some + long + expression +
\t         to_produce_the_word(world))
\t     << endl;
}

在像Java这样的语言中,你无法避免样板。您拥有的最佳选择是检查生成的代码,确保它与您手动编写的代码相同。根据需要进行修改。如果可能,配置IDE以生成所需的确切代码。 Eclipse非常擅长这一点。

答案 1 :(得分:1)

了解幕后发生了什么。

知道您的IDE实际上正在调用编译器。对它通过的旗帜有一些了解。能够从命令行调用编译器。

了解运行时系统。请注意启动程序时使用或需要的标志。能够从命令行启动程序。

答案 2 :(得分:1)

我认为在任何人使用任何类型的RAD工具之前,他们应该能够在比现有技术年龄大10年的计算机上从头开始编写应用程序(从头开始将框架组件连接在一起)。不知道范式/框架的来龙去脉导致新手开发人员的代码不好,他们只是在他们开发的平台的一英里高视角下学习东西。也许他们应该在一些技术中做到这一点 - 即,GTK编程与MVC完全不同,后者也与SWING和.NET不同。

我认为最终结果应该是一个开发人员,在他们开始思考如何在特定的RAD环境中编写接口之前,会考虑问题的更精细细节。

答案 3 :(得分:0)

这是一个开放式的问题,但是......

我们有一个每个人共享的Eclipse格式文件,因此我们都在同一个庄园中格式化代码。 (除了我们有一个唯一的InteliJ家伙)。

每个人都共享一个字典文件。它有助于从代码中删除所有红线。使其看起来更干净,更易读。

我在代码上运行EMMA,找出谁没有测试他们的代码,然后对他们抱怨。

我们面临的主要问题是大多数团队都不了解IDE的所有功能/功能(eclipse)。不知道CTRL + O(两次)或自动代码。我作为“热键向导”所能做的就是不断与他们分享我的知识,以帮助他们提高工作效率。

我期待有一天我的问题是他们尽可能地自动生成。 而不是我发现由于输入错误而从getter方法返回错误值的错误。

答案 4 :(得分:0)

仅使用文本编辑器尝试开发(至少偶尔),并从命令行启动编译,测试等。

输入命令会很快变得乏味,所以创建脚本或(甚至更好)学习rake,ant,msbuild。

如果IDE为您执行代码生成并且代码生成非常重要(例如从xsd生成类或从wsdl生成代理类),请尝试找出如何从命令行运行代码生成 - 然后挂钩代码生成到构建中(因此您永远不会想要编辑生成的代码)。

自动编码代码的想法很棒,但它通常只会让您的代码变得混乱。如果你的代码较少,那么轻微的格式不一致就不是什么大问题了。

将代码质量工具添加到构建样式检查,类和方法大小,复杂性,代码重复,测试覆盖率等(复杂,猿,flog,flay,ndepend,ncover等)将阻止IDE生成的代码。