19
如何更快地编码(不牺牲质量)
我从事专业编码器已有数年了。关于我的代码的注释通常是相同的:编写出色的代码,经过充分测试,但可能会更快。 那么,如何在不牺牲质量的前提下成为更快的编码器呢?出于这个问题的考虑,我将范围限制在C#中,因为这主要是我编写的代码(出于娱乐目的)或Java(在许多方面都足够类似)。 我已经在做的事情: 编写完成工作的最小解决方案 编写一系列自动化测试(防止回归) 为各种事物编写(和使用)可重用的库 在运作良好的地方使用众所周知的技术(例如,休眠) 在适合的位置使用设计模式(例如,Singleton) 这些都很不错,但是我觉得我的速度不会随着时间的推移而增加。我很在意,因为如果我能做些事情来提高生产率(甚至提高10%),那将比我的竞争对手快10%。(不是我有。) 除此之外,无论是小型Flash开发还是企业Java / C ++开发,我都从经理那里得到了回报。 编辑:关于我所说的快,以及我怎么知道我慢,似乎有很多问题。让我更详细地说明一下。 我曾在多家公司的中小型团队(5至50人)中从事各种项目和各种技术(Flash,ASP.NET,Java,C ++)的工作。我的经理们(他们直接告诉我)的观察结果是我“很慢”。 部分原因是因为我的许多同仁为追求速度而牺牲了质量。他们编写的代码有错误,难以阅读,难以维护,并且难以为其编写自动测试。我的代码通常具有良好的文档记录,可读性和可测试性。 在Oracle,我将始终以比其他团队成员慢的速度解决错误。我知道这一点,因为我会得到对此的评论;这意味着其他(是的,更高级和经验丰富的)开发人员可以以几乎相同的质量(可读性,可维护性和可测试性)在比我花费更少的时间内完成我的工作。 为什么?我想念什么?我如何才能更好地做到这一点? 我的最终目标很简单:如果我今天能在40个小时内制造出产品X,并且我能以某种方式提高自己,以便明天20、30甚至38个小时就可以制造出相同的产品,那就是我想知道的-我如何到达那里?我可以使用什么过程来持续改进?我以为这与重用代码有关,但这似乎还不够。