开始编程时遇到的第一个挑战是编写功能代码。但成为开发者后,编程技能也会随之增长。你的代码应该从普通的功能代码发展为简洁、高效、可理解且可维护的代码。
这才是开发人员面临的真正挑战。
本文将会介绍助你实现超级代码状态的5个原则。
1. 代码一目了然
程序的大小增加时,代码的复杂性也会随之增加。代码也会变得很难调试,因为调试复杂的代码是一项可怕的任务。没有人喜欢维护复杂的代码。这个原则指出应该始终保持代码的简单性。如果代码复杂,请努力将其分解成更小、更易维护的代码。
编写简洁的代码比编写复杂的BS代码更困难。作为开发人员,随着技能不断成熟,你的代码就应该越干净、越有意义。
2. 你并不需要它
有时应当未雨绸缪,但不是在编程方面。人们倾向于编写将来可能需要但现在还不需要的代码。这些代码不必要地增加了程序的大小,因为编写的代码从来没有实现过。更重要的是,大多数程序员将来都不会使用这些代码。程序员的这种习惯会使代码不必要地膨胀。
这一原则规定在必要时才实施。这是每个开发人员都应该遵循的一条建议。
3. 不要重复
这一原则对于编写简单且易于修改的代码至关重要。重复的代码是程序员常犯的错误。这个原则指出,一段代码应该在源代码中的一个地方实现。如果注意到同样的代码块重复出现,说明违背了这个原则。
这一概念的反义词为WET代码:所有内容都重复一遍 可以创建一个公共函数或将代码抽象化,以避免代码中的任何重复。
4.关注点分离(SoC)
关注点分离原则:管好自己的事——就是字面意思。这个原则建议将复杂的代码划分为不同的部分或域。每个部分相互独立,因此每个部分可以独立处理。而且,维护、更新和重用代码也更加容易。
SoC一个很好的例子就是MVC架构。该架构将程序分成三个区域:数据(模型)、逻辑(控制器)和最终用户看到的内容(视图)。MVC在现代框架中大量运用。
图片来源:Wikimedia
5. 避免过早优化
我们都希望优化自己的代码。但是该原则指出不应该在开发的早期阶段优化算法。
此原理与YAGNI原理非常相似。不同之处在于,YAGNI原则谈到了实现不必要函数的趋势,而该原则谈到了在必要之前加快算法速度的趋势。
过早优化的问题在于,直至出现问题之前,你永远无法真正知道程序的瓶颈在哪里。当然可以猜测,有时猜测甚至可能是对的。但是更常见的情况是,你会浪费宝贵的时间来尝试加速一个并不比预期慢的或者不像期望的那样经常被调用的函数。
结语
“编写代码的时候,永远要把维护代码的人当成一个知道你住在哪里的暴力精神病患者。”
——马丁·戈尔丁 |
成为开发人员后,你会意识到项目的成功在很大程度上取决于你的团队。上面的原则可以帮助你编写可维护的代码——不仅是你自己,将来任何人都可以维护这些代码。毕竟,团结就是力量。
编程快乐!