技术开发 频道

如何有效的简化你的软件开发

    团队编程

    我很喜欢code review和团队编程。如果我没有在一两分钟之内给别人解释好我的代码,那说明我的代码太复杂了。每天,你都和你的同伴一起检查你的代码以确保它们不是太复杂。如果你是自己一个人工作,你就去抓一个朋友,你的伴侣或是你的狗,把代码解释给他们听。

    由于我教很多的研讨小组成员并且撰写了很多文章和书籍,我知道我的代码总是成为一个显微镜。我很努力的让我的代码对大范围的编程者来说要易读并且易懂。如果一个初学者可以理解我的变量的名字,方法的名字和我的逻辑,我想一个有经验的编程者就更能懂了。你也要想一想你的代码可以帮助你编写更简单,易懂的代码。

    “正确”设计

    如果你看一看这两段代码。你会立即区分出哪个是初学者编写的代码,哪个是有经验的编程者编写的代码。初学者会有设计不足的代码。但是,一个有经验的编程者可能会有过度设计的代码。当一个人没有在解决问题上有足够想法的时候,设计不足的代码就会产生。

    考虑Listing 1中的代码,检查是否有文件存在。你可以看到这个显然没有将足够的想法融入重用此代码中,没有异常处理。现在,如果你看到由一个编程者过度设计的代码来解决同样的问题,你可以使用Listing 2中的方法。

    是的,在Listing 2中的代码是非常好的,而且通过尝试检查文件是否存在而解决了所有可能发生的问题,但是这个代码就是要解决业务问题的代码吗?是有可能的,这个代码只用简单的一个单一的catch块,其中包括文件名和从.NET返回的错误信息,这已经足够了。有些人花费大量时间来创建这个过度设计的方法并且还要测试它。有那些时间可以更好的用在解决业务问题的上面。

    拥有强大,灵活而且可以再度使用的软件是一个伟大的目标。但是,如果你不能交付一个产品来帮助你的业务,那么这个目标是无法实现的。开始研发你所需要的软件吧。让你的代码可以扩展以适应未来的需要。使用简单的设计样式,编写你的代码,如果你要把它展示给一个大集团的同行们。如果你遵循这些技术,你会发现你的代码是简单的而且是“正确”的设计。

0
相关文章