建议开发人员:代码不是重点、使用最佳实践、编写自解释的代码并避免写注释...

124 阅读3分钟

在我超过 15 年的开发生涯中,我学到了一些可以显着提高我的效率的东西。在这篇文章中,我将与您分享这些经验教训。

基本建议

1.代码不是唯一的重点

作为开发人员,我们喜欢编写代码。我们中的大多数人都希望被赋予一个十分明确的任务,“世界上的其它东西都与我无关,我只需要解决有趣技术难题。”

这本身没有错。但是,我们更应当付出合理的努力以确保您正在解决正确的问题。我们需要尽早并经常收集用户的真实反馈,通常是通过持续向用户交付。Be Agile!

2. 软件设计很重要

在我开发生涯的前 5 年里,我认为软件设计是为软件架构师或其他具有特殊角色的人设计的。直到我读了Robert Martin的《整洁的代码》。本书激发了对软件设计的关注,并包含示例和许多技术启发式方法。其中心要点是:“走得快的唯一方法就是走得好”。

3. 使用最佳实践

比如说,一些常见的空指针判断、数组下标越界判断,还有尝试为你的代码编写测试用例。开始时,盲目遵循最佳实践会比遵循自己不完善的习惯要好。随着时间的推移,您将会越来越适应一开始的不适应,直到发展为自己的最佳实践。

4. 不要将继承用于代码重用

这是让人想起“使用最佳实践”部分的最佳实践之一。我的建议:刚开始时,根本不要使用继承来重用代码。将继承用于代码重用基本上一个糟糕的决定,对代码维护性会造成很大的伤害。请使用组合而不是继承。

5. 编写面向对象的代码

理解面向对象的这些原则和反模式非常有价值。

实际上只有静态方法的类不是面向对象的。尽量避免完全使用静态代码。

6. 编写函数式代码

(不要将函数式编程与命令式结构编程混淆。)

这一点并不是要完全切换到函数式语言。您可以受益于在 OO 语言中使用函数式风格。把需要状态的机会降低到最少,尤其是可变状态,在你的函数中完成某个确定的业务逻辑。

7.不要复制粘贴大块代码到多个地方

将大块代码复制粘贴到多个地方几乎总是不明智的。任何有自尊心的开发人员很快就会了解这一点,并开始遵循某种形式的不要重复自己(DRY)。不幸的是,对 DRY 的善意追求往往会导致过度工程和意外的复杂性。这就是 DRY 的对应物出现的地方:Write Everything Twice (WET)。WET 背后的想法是仅在第三次出现重复时进行重复数据删除。

8. 类型、名称和注释

尝试编写自解释的代码并避免写注释。

注释很危险,因为它们可能会撒谎。代码可能在不更新注释的情况下更改。注释下方,可能又添加了新代码。注释一开始可能是错误的或不准确的。发生这种情况时,注释不仅变得毫无用处,而且会产生误导。

就是说,你要编写自文档化代码。