每个开发人员必须知道的十大编码原则

2025-06-10

每个开发人员必须知道的十大编码原则

大家好!我不想浪费时间,赶紧进入正题吧。

编写代码很容易。编写好的代码却很有挑战性。

糟糕的代码形式多种多样。杂乱的代码、大量的 if-else 语句、稍加调整就崩溃的程序、毫无意义的变量。程序或许能运行一次,但永远经不起任何推敲。

如果你想成为一名程序员,就不要走捷径。目标是编写易于维护的代码。你自己维护起来容易,团队中的其他开发人员也维护起来也容易。如何编写高效的代码?你需要严格遵守编程原则,才能编写出优秀的代码。所以今天我们将学习一些编程原则,帮助你成为一名优秀的开发人员。

1. 保持简单,愚蠢(KISS)

图像.png
这听起来有点刺耳,但这是一条值得遵循的编码原则。这是什么意思呢?

这意味着你应该尽可能简单地编写代码。不要试图用一段高级代码来炫耀自己或炫耀自己。如果你能用一行代码写完一个脚本,那就用一行代码写完。

这是一个简单的函数:



 function addNumbers(num1,num2){
 return num1 + num2;
}


Enter fullscreen mode Exit fullscreen mode

非常简单。它很容易阅读,而且你清楚地知道发生了什么。

使用清晰的变量名。利用代码库来使用现有工具。确保六个月后可以轻松返回并立即开始工作。保持简洁可以避免麻烦。

2. DRY(不要重复自己)

图像.png
DRY(不要重复自己)意味着不要编写重复的代码,而是使用抽象将日常事物抽象到一个地方。

如果同一代码块出现在两个以上的地方,可以考虑将其单独设置为方法;如果某个硬编码值多次使用,可以将其设置为公共 final 常量。这种面向对象设计原则的好处在于维护。

重要的是不要滥用它,重复不是为了代码,而是为了功能。

这意味着如果您使用标准代码来验证 OrderId 和 SSN,并不意味着它们是相同的,或者它们将来会保持不变。

通过使用标准代码来实现两种不同的功能或事物,您会将它们永远紧密地耦合在一起,并且当您的 OrderId 改变其格式时,您的 SSN 验证代码将会中断。

因此,要警惕这种耦合,不要将任何使用相似代码但不相关的代码组合在一起。您可以进一步学习 Udemy 上的 Java 软件架构与设计模式基础课程,以了解更多关于如何编写正确的代码以及设计系统时应遵循的最佳实践。

DRY 代码易于维护。调试一个处理 50 次重复的循环比调试 50 个处理 1 次重复的代码块更容易。

要了解有关 DRY 的更多信息,您应该阅读这篇文章,感谢@Chris Bongers

3. 开放/关闭

图像.png
这条原则意味着你应该致力于让你的代码对扩展开放,但对修改关闭。在发布一个供他人使用的库或框架时,这是一个重要的原则。

例如,假设您正在维护一个 GUI 框架。您可以发布代码,让程序员直接修改和集成。但是,如果四个月后您发布了一个重大更新,会发生什么情况呢?

他们的代码会崩溃。这会让工程师不高兴。无论你的库有多有用,他们都不会再使用它了。

相反,发布代码时应避免直接修改,并鼓励扩展。这将核心行为与修改后的行为区分开来。代码会更稳定,也更易于维护。

4. 组合优于继承

如果您使用面向对象编程编写代码,您会发现这很有用。组合优于继承原则指出:具有复杂行为的对象应该包含具有单独行为的对象的实例。它们不应该继承一个类并添加新的行为。

依赖继承会导致两个主要问题。首先,继承层次结构很快就会变得混乱。此外,定义特殊行为的灵活性也会降低。假设你想实现以下行为来共享:

组合编程编写起来更加简洁,维护起来也更加方便,并且能够灵活地定义行为。每个行为都是一个独立的类。您可以通过组合各个行为来创建复杂的行为。

5. 你不需要它(YAGNI)

图像.png
这条原则意味着你永远不应该为了将来可能需要的功能而编写代码。不要试图解决一个不存在的问题。

为了编写 DRY 代码,程序员可能会违反这一原则。缺乏经验的程序员常常会尝试编写尽可能抽象、通用的代码。过多的抽象会导致代码臃肿,难以维护。

仅在必要时应用 DRY 原则。如果您发现代码块重复出现,请将其抽象出来。不要考虑太多,以免影响当前的代码批次。

实践 YAGNI 有两个主要原因,

  • 由于您避免编写不需要的代码,因此可以节省时间。
  • 您的代码会更好,因为您避免了用或多或少是错误但仍然保留的“猜测”来污染它。

6. 单一职责

图像.png
当你开始编写代码时,随着时间的推移,你的代码会变得笨拙。你会有一些执行多种功能的类/模块。最终,这些类会包含成百上千行代码。
该原则规定,程序中的每个类或模块都应该只具有特定的功能。换句话说,程序中的一个类或模块应该只负责与某一特定功能相关的任务。这有助于你保持模块的简洁和干净。

开放/封闭原则和单一职责原则都属于 SOLID 原则。在本文中,@ Francesco Ciulla精彩地讲解了 SOLID 中的每一项原则。

7. 记录你的代码

任何资深开发人员都会强调用适当的注释记录代码的重要性。所有编程语言都提供注释,你应该养成编写注释的习惯。注释可以用来解释对象、增强变量定义,并使函数更易于理解。

这是一个带有注释的 Python 函数,可以指导您完成代码:



def find_odd():
       number = int(input(Enter a number..)) # Get a number
       if number % 2 == 0: # Divide number by 2. If no remains,
                print("This is a even number") # Print it is not a odd number
       else :
                print("Here is the odd number!") # If 1 remains, print it is a odd number




Enter fullscreen mode Exit fullscreen mode

在编码时留下评论需要做更多的工作,而且您对自己的代码非常了解,对吗?

无论如何请留下评论!

试着写一个程序,把它搁置六个月,然后回来修改它。你会庆幸自己写了文档,而不用费力地翻阅每个函数来记住它的工作原理。在编程团队工作?不要强迫你的同事理解你的语法,以免让他们感到沮丧。

8.关注点分离

关注点分离原则是单一职责原则的抽象版本。该思想指出,程序应该由不同的容器设计,并且这些容器之间不应该相互访问。

一个著名的例子是模型-视图-控制器 (MVC) 设计。MVC 将程序分为三个不同的部分:数据(模型)、逻辑(控制器)以及页面显示(视图)。MVC 的变体在当今最流行的 Web 框架中很常见。

例如,处理数据库的代码不需要知道如何在浏览器中渲染数据。渲染代码接收用户的输入,而逻辑代码负责处理数据。每段代码都是完全独立的。

结果是代码易于调试。如果您需要重写渲染代码,您可以直接执行,而不必担心数据如何保存或逻辑如何处理。

9. 重构

图像.png
虽然难以接受,但你的代码不可能一开始就完美无缺。重构代码意味着审查你的代码并寻找优化方法。在保持结果不变的情况下,提升代码效率。

代码库在不断发展。重新审视、重写甚至重新设计整段代码都是完全正常的。这并不意味着你第一次编写程序时没有成功。随着时间的推移,你会对项目更加熟悉。利用这些知识来调整你现有的代码,使其遵循 DRY 原则,或者说 KISS 原则。

10. 不惜一切代价清洁代码

图像.png
放下你的自负,别再想着写些“聪明”的代码了。那种代码看起来更像个谜语,而不是答案。你写代码不是为了给陌生人留下深刻印象。

不要试图将大量的逻辑塞进一行代码中。请在注释和文档中留下清晰的说明。代码易读也容易维护。

优秀的程序员和可读性代码密不可分。必要时请留下评论。请遵循代码风格指南,无论是编程语言还是公司规定的。@ Mario Cervera在本文中对“代码整洁之道”进行了精彩的阐释。

祝您编码愉快!

最初发表于 Hashnode

鏂囩珷鏉ユ簮锛�https://dev.to/unitybuddy/top-10-coding-principles-every-developer-must-know-2gk4
PREV
我们如何使用 TypeScript 开发在线音乐播放器
NEXT
如何像程序员一样思考?