掌握“干净代码”艺术的5个技巧 干净代码究竟是什么?我的代码即使没有它也能运行,为什么还要用干净代码呢? 1. 直观的变量名 2. 一目了然的函数 3. 将相似的函数组合在一起 4. 尽量减少注释 5. 代码格式化 结论 感谢阅读

2025-05-27

掌握代码整洁之道的 5 个技巧

清洁代码到底是什么?

既然我的代码没有清洁代码也能正常工作,为什么还要使用清洁代码呢?

1.直观的变量名

2. 不言自明的功能

3. 将相似的功能组合在一起

4. 尽量减少评论数量

5.代码格式化

结论

感谢阅读

优秀的程序员写的代码很无聊。优秀的程序员写的代码真的很无聊。

去年某个时候,我在网上看到这句话,它让我了解了干净代码的概念。

清洁代码到底是什么?

简单来说,干净代码是指易于阅读和理解的代码库。干净代码的一些显著特点是:

  • 减少读者的认知负担
  • 包含直观命名的变量函数
  • 遵循编码的最佳实践

既然我的代码没有清洁代码也能正常工作,为什么还要使用清洁代码呢?

很高兴你问到这个问题。“整洁代码”并非指编写能够正常工作的代码,而是指编写易于阅读和长期维护的代码。从这张图可以看出,维护脏代码的成本会随着时间的推移急剧增加,而“整洁代码”的成本则保持相对稳定。

图形

整洁代码不是最短的看起来最漂亮的,但它是优雅的代码,理解起来只需花费最少的努力

编程既是一门艺术,也是一门科学。以下是一些帮助您编写“干净代码”的技巧。

1.直观的变量名

显然,没有人会在心里进行所有的计算来检查变量存储了什么。

示例 1

const x = n.filter(e => e > 0);
Enter fullscreen mode Exit fullscreen mode

示例 2

const positiveElements = numbers.filter(num => num > 0);
Enter fullscreen mode Exit fullscreen mode

正如您所看到的,第二个例子比第一个例子更容易理解。

对于布尔值,变量名应该是一个可以用“是”“否”回答的问题,例如

const isValid = false;
const hasAuthorization = true;
Enter fullscreen mode Exit fullscreen mode

2. 不言自明的功能

编写函数或方法时需要记住两件事:

  1. 遵循单一职责原则(SRP)
  2. 函数名称应该是动作词(动词)

单一职责原则 (SRP)规定一个函数应该只执行一项特定的任务。例如,一个向服务器发送数据的函数 不应该 验证数据

const validate = (data) => {
 // ...
}

const sendData= (data) => {
 // ...
}

const submit = (data) => {
  if (!validate(data)){
    return;
  }
  sendData(data)
}
Enter fullscreen mode Exit fullscreen mode

还有另外两个值得遵循的原则:

  1. 函数体不应包含超过 2 层嵌套
  2. 一个函数最多可以接受 3 个参数

3. 将相似的功能组合在一起

现在我们来了解一下内聚力的概念内聚力是衡量模块元素功能相关程度的标准。

相关函数应该放在一个类中,帮助我们保持代码的划分

class IOHelper:
  @staticmethod
  def read_data(file_name: string) -> None:
    pass

  @staticmethod
  def write_data(file_name: string, data: Any) -> None:
    pass
Enter fullscreen mode Exit fullscreen mode

这里我们发现该类仅将用于ioIOHelper操作的函数组合在一起,而没有任何自己的实用程序。

4. 尽量减少评论数量

对于一些初学者来说,这可能听起来有点违反直觉,但请听我说完。你编写的代码应该是不言自明的,任何查看你代码的人都不应该依赖注释来理解它的作用。

在极少数情况下,您可能需要注释,以防出现一些不直观的代码而没有解决方法。

// using setTimeout to avoid race-condition
setTimeout(fn, 0)
Enter fullscreen mode Exit fullscreen mode

5.代码格式化

代码库应始终遵循一套严格的格式规则。使用像blackprettier 这样的格式化程序来自动化格式化也是一个好主意。

项目结构应该在项目开始之前确定,并且每个参与项目的人都应该了解并同意遵守它,因为项目结构依赖于上下文,每个人都喜欢特定的结构而不是其他结构。

还应事先指定变量和函数命名约定(isValidhasVality等),并应牢记特定于语言的情况(例如:python中的蛇形命名法JS/TS中的驼峰命名法)。

snake_case_variable = "value"
Enter fullscreen mode Exit fullscreen mode
camelCaseVariable = "value"
Enter fullscreen mode Exit fullscreen mode

结论

正如前面提到的,简洁的代码并非最短的代码,而是最容易理解的代码。遵循这些原则可以帮助你成为一名更优秀的程序员,这不仅能提高你的编程技能,还能提升编程所需的软技能,因为它能教会你如何向非技术人员解释你的代码。

感谢阅读

需要一位顶级软件开发自由职业者来解决你的开发难题吗?在Upwork上联系我

想看看我正在做什么吗?查看我的个人网站GitHub

想联系我吗?请在LinkedIn上联系我

关注我的博客,每两周Medium上获取最新资讯

常问问题

这些是我经常收到的一些问题。希望这个常见问题解答部分能解决您的问题。

  1. 我是初学者,该如何学习前端 Web 开发?
    可以参考以下文章:

    1. 前端流行语
    2. 前端开发路线图
    3. 前端项目构想
    4. 从初学者过渡到中级前端开发人员
  2. 你能指导我吗?

    抱歉,我工作已经很忙了,没时间指导任何人。

文章来源:https://dev.to/ruppysuppy/5-tips-to-master-the-art-of-clean-code-57b6
PREV
成为更优秀前端开发人员的 5 个 UX 技巧 1. 使用精致的 UI 2. 使用微交互 3. 减少完成任务的操作数量 4. 减少加载时间 5. 直观的结论 感谢阅读
NEXT
清洁架构:代码背后的概念