Skip to content

Latest commit

 

History

History
107 lines (54 loc) · 7.59 KB

5-clean-code-tips-dramatically-improve-productivity.md

File metadata and controls

107 lines (54 loc) · 7.59 KB

5 个“清洁代码”技巧将显著提高你的生产力

原文:www.kdnuggets.com/2018/10/5-clean-code-tips-dramatically-improve-productivity.html

c 注释

Header image

高质量的代码。很多人谈论这个,但很少有人真正做到这一点。

大多数编程的人自然知道高质量的代码应该是什么样的或感觉如何。它应该非常易于阅读和快速理解,不应该有任何重大缺陷,边界情况应该得到处理,并且应该是“自我文档化”的。然而,许多人在尝试(希望)编写高质量代码时仍然会偏离目标。

错误的原因在许多情况下是可以理解的。预测人们如何解读你的代码、他们是否会觉得它易于阅读或是一场噩梦可能很具挑战性。而且,一旦你的项目变得非常庞大,即使是也可能无法阅读它!

在这种情况下,建立一些你可以依赖的原则总是很好的。一些你可以在设计或编写代码时随时参考的规则。

以下 5 个清洁编码原则是我编写代码时遵循的!它们为我的工作带来了巨大的生产力提升,并帮助我和我的同事能够轻松解读和扩展我所工作的代码库。希望它们也能帮助你更快、更好地编写代码!

如果没有经过测试,那就是坏的

测试,测试,再测试。我们知道我们应该始终进行测试,但有时我们为了加快项目进度而走捷径。但没有彻底的测试,你如何**100%**完全知道代码是否有效?是的,有些代码非常简单,但当你遇到那些你认为不需要测试的疯狂边界情况时,总是会感到惊讶!

给自己和团队中的每个人一个好处,定期测试你编写的代码。你会想以粗略到细致的方式进行测试。从小规模的单元测试开始,确保每个小部分独立工作。然后逐渐开始测试不同的子系统,逐步测试整个新系统的端到端。这种测试方式可以让你轻松追踪系统崩溃的地方,因为你可以轻松验证每个单独的组件或小的子系统是否是问题的源头。

选择有意义的名称

这就是使代码自我文档化的原因。当你回顾旧代码时,你不应该需要查看每一个小注释并运行每一小段代码来弄清楚它的作用!

代码应该大致像普通英语一样易读。这对于变量名、类和函数尤为重要。这三者的名称应该始终具有自我解释性。与其使用像“x”这样的默认名称,不如用“width”或“distance”或变量在“实际世界”中应代表的其他名称。用“实际世界”术语进行编码将有助于让你的代码以这种方式易读。

类和函数应该小且遵守单一职责原则(SRP)

小的类和函数使代码的可读性大约提高了 9832741892374 倍……

但说真的,它们真的很重要。首先,它们允许非常独立的单元测试。如果你测试的代码片段很小,那么在测试或部署过程中出现的任何问题都很容易追踪和调试。小的类和函数也有助于提高可读性。与其有一个包含许多循环和变量的大块代码,不如将其减少到一个运行多个较小函数的函数。然后你可以根据这些函数的功能给它们命名,结果就是人类可读的代码!

SRP 带来类似的好处。一个职责意味着你只需测试少量边缘情况,这些情况相对容易调试。此外,命名函数也很简单,因为它具有现实意义。由于它只有一个单一目的,所以它的名称将直接与其目的相关,而不是尝试给一个试图完成多种不同任务的函数命名。

捕获并处理异常,即使你觉得不需要这样做。

代码中的异常通常是边缘情况或我们希望以特定方式处理的错误。例如,通常当错误被抛出时,程序会停止;这对我们已经部署到生产环境中并为用户服务的代码显然是不适用的!我们需要单独处理这些错误,也许试着判断它是否非常关键,或者我们是否应该忽略它。

你应该始终具体地捕获和处理异常,即使你认为不需要这样做。小心总比后悔好。异常处理将让你对代码有更好的顺序感和控制感,因为你知道具体在某个异常被触发或某段代码失败时会发生什么。对代码有更深刻的理解,使其更容易调试,并提高代码的容错性。

日志,日志,日志

记录日志。你可能会问记录什么?……一切,没错!没有什么叫做“日志过多”!

日志是调试代码和监控应用程序在生产环境中运行的绝对首要来源。你应该记录程序的每一个重要“步骤”,它进行的任何重要计算,任何错误、异常或异常结果。记录这些事件发生的日期和时间也可能有助于跟踪。所有这些都将使你更容易追踪程序在管道中的哪个步骤失败

许多常见的编程语言,如 Python,都附带有一些非常有用的日志库。如果你的应用程序将作为 SaaS 应用运行,那么你可能需要考虑离设备的集中日志记录。这样,如果你的服务器出现故障,你可以轻松地恢复日志!

TL;DR

(1) 如果没有测试,那就是坏的

(2) 选择有意义的名称

(3) 类和函数应该小且遵循单一职责原则(SRP)

(4) 捕获和处理异常,即使你认为不需要也要处理

(5) 日志,日志,日志

喜欢阅读关于技术的内容吗?

twitter 上关注我,了解最新和最棒的技术!

感谢 David Smooke

个人简介:George Seif 是一位认证的极客及 AI / 机器学习工程师。

原文。已获许可转载。

相关:

  • 使用 Python 和代码创建的 5 种快速简易数据可视化

  • 数据科学家需要了解的 5 种聚类算法

  • 为回归问题选择最佳机器学习算法


我们的 3 大课程推荐

1. Google 网络安全证书 - 加速你的网络安全职业生涯。

2. Google 数据分析专业证书 - 提升你的数据分析能力

3. Google IT 支持专业证书 - 支持你的组织进行 IT 管理


更多相关内容