每个程序员都必须知道的10条基本编程原则

您的代码应该清晰且易于维护。这里有几个其他的编程原则来帮助你清理你的行为。...

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

坏代码有多种形式。乱七八糟的代码,庞大的if-else链,只需一次调整就中断的程序,毫无意义的变量。该计划可能只起一次作用,但经不起任何审查。

如果你想成为一名程序员,不要满足于走捷径。目标是编写易于维护的代码。易于维护,也便于团队中的任何其他开发人员维护。如何编写有效的代码?通过遵守编程原则,您可以编写好代码。

以下是10条编程原则,它们将使您成为一名更好的程序员。

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

这听起来有点刺耳,但这是一个生活的编码原则。这是什么意思?

这意味着您应该尽可能简单地编写代码。不要试图变得过于聪明或炫耀一段高级代码。如果你能用一行写脚本,就用一行写。

下面是一个简单的函数:

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

很简单。它很容易阅读,而且你确切地知道发生了什么。

使用清晰的变量名。利用编码库使用现有工具。六个月后,你可以轻松地回来工作。保持简单会让你省去头痛。

2.写干代码

不要重复你自己(DRY)原则的意思很明显,就是不要重复代码。这是一个常见的编码错误。编写代码时,避免重复数据或逻辑。如果您曾经在程序中复制和粘贴代码,那么它不是干代码。

看看这个脚本:

function addNumberSequence(number){ number = number + 1; number = number + 2; number = number + 3; number = number + 4; number = number + 5; return number;}

不要重复行,试着找到一个使用迭代的算法。For循环和while循环是控制需要多次运行的代码的方法。

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

3.打开/关闭

这一原则意味着您的目标应该是使代码对扩展开放,但对修改关闭。这是发布其他人将使用的库或框架时的一个重要原则。

例如,假设您正在维护一个GUI框架。您可以发布代码,让程序员直接修改和集成您发布的代码。但是当你在四个月后发布一个主要的更新时会发生什么呢?

他们的密码会被破解。这会让工程师不高兴。他们不会想再使用你的图书馆了,不管它有多有用。

相反,发布代码可以防止直接修改并鼓励扩展。这将核心行为与修改的行为分离。代码更稳定,更易于维护。

4.组成重于继承

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

依赖继承会导致两个主要问题。首先,继承层次结构可能会很快变得混乱。您在定义特殊情况行为方面的灵活性也较低。假设您想要实现共享行为:

组合编程编写起来更简洁,维护起来更容易,并且允许灵活地定义行为。每个个体的行为都是它自己的类别。您可以通过组合单个行为来创建复杂的行为。

5.单一责任

单一责任原则说,程序中的每个类或模块只应提供一个特定的功能。正如罗伯特C。Martin说,“一个班级应该只有一个改变的理由。”

类和模块通常以这种方式开始。当类变得更加复杂时,小心不要添加太多的职责。重构并将它们分解为更小的类和模块。

重载类的结果是双重的。首先,当您试图隔离某个模块进行故障排除时,它会使调试复杂化。其次,为特定模块创建附加功能变得更加困难。

6.关注点的分离

关注点分离原则是单一责任原则的抽象版本。这个想法表明,一个程序应该用不同的容器设计,这些容器不应该相互访问。

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

例如,处理数据库的代码不需要知道如何在浏览器中呈现数据。呈现代码接受用户的输入,但逻辑代码处理处理。每段代码都是完全独立的。

结果是代码易于调试。如果您需要重写呈现代码,您可以这样做,而不必担心数据如何保存或逻辑如何处理。

7.你不会需要它(雅格尼)

这一原则意味着您永远不要在将来可能需要的情况下编写功能代码。不要试图解决一个不存在的问题。

为了编写枯燥的代码,程序员可能会违反这一原则。通常,没有经验的程序员试图尽可能地编写最抽象和通用的代码。太多的抽象会导致无法维护的臃肿代码。

仅在需要时才应用干燥原则。如果您注意到反复编写的代码块,请将它们抽象出来。不要以牺牲当前代码批处理为代价来考虑太远。

8.记录你的代码

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

下面是一个带有注释的JavaScript函数,用于指导您完成代码:

//This function will add 5 to the input if odd, or return the number if evenfunction evenOrOdd(number){ //Determine if the number is even if(number % 2 == 0){ return number; } //If the number is odd, this will add 5 and return else { return number + 5; }}

在您编写代码时,留下注释需要做更多的工作,并且您对代码非常了解,对吗?

不管怎样,请留下评论!

试着编写一个程序,让它单独运行六个月,然后回来修改它。你会很高兴你记录了你的程序,而不是为了记住它是如何工作的而对每一个函数倾诉。在编码团队工作?不要强迫其他开发人员破译您的语法,从而使他们感到沮丧。

9.重构

这很难让人接受,但你的代码第一次就不会完美。重构代码意味着检查代码并寻找优化代码的方法。使其更高效,同时保持结果完全相同。

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

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

把你的自我放在门外,忘记写聪明的代码。这种代码看起来更像是一个谜而不是一个解决方案。你编码不是为了给陌生人留下深刻印象。

不要试图把一大堆逻辑塞进一行。在评论和文档中留下清晰的说明。如果您的代码易于阅读,那么它将易于维护。

优秀的程序员和可读的代码是相辅相成的。必要时留下评论。遵守风格指南,无论是由语言还是公司规定。

怎样才能成为一名优秀的程序员?

学习如何成为一名优秀的程序员需要相当多的工作!这10条编码原则是成为专业程序员的路线图。您还应该了解多态性值得学习的原因。

一个好的程序员知道如何使他们的应用程序易于使用,在团队中工作良好,并按时完成项目。通过遵循这些原则,您将在编程职业生涯中获得成功。尝试这10个初学者编程项目并检查您的代码。看看你是否坚持这些原则。如果没有,请挑战自己,改进代码。

Subscribe to our newsletter

Join our newsletter for tech tips, reviews, free ebooks, and exclusive deals!

Click here to subscribe

  • 发表于 2021-08-06 00:44
  • 阅读 ( 108 )
  • 分类:编程

你可能感兴趣的文章

你从未听说过的最奇怪的编程原理

...90年代,硬盘驱动器、cpu和RAM的限制比现在要严格得多,程序员们努力工作,尽可能地在限制范围内进行调整。然而,现在我们有了更大的驱动器、更快的CPU和更多的RAM,我们仍然很难遵守限制。一切都会随着时间膨胀。你的工...

  • 发布于 2021-03-12 02:06
  • 阅读 ( 347 )

迄今为止程序员更有趣的10个原因

... 你试过和程序员约会吗? ...

  • 发布于 2021-03-12 19:23
  • 阅读 ( 231 )

20个ted关于编程的演讲每个人都必须观看

...编程的讨论,您将不会学习如何编程,而是如何成为一名程序员。知道如何编写代码只是编程的一个方面,坦白地说,这是一个较小的方面。懂得思考是关键。 ...

  • 发布于 2021-03-12 21:17
  • 阅读 ( 272 )

为每个学生提供10个基本的搜索技巧

... DuckGo是学生程序员最好的朋友。一次点击就可以获得惊人的知识财富,这真是永无止境。使用即时回答模型,您可以找到编程语言的备忘单,使用文本编辑器搜索引擎中语法突出显示...

  • 发布于 2021-03-13 08:33
  • 阅读 ( 270 )

在你学习它之前,先知道你要学什么

...及到从计划一个全新的工作流程到编写技术手册,再到与程序员合作为业务开发新的软件等各个方面。 ...

  • 发布于 2021-03-13 12:14
  • 阅读 ( 309 )

所有程序员都应该知道的13条最重要的sql命令

... 今天我将向您展示作为程序员需要了解的一些核心SQL命令。 ...

  • 发布于 2021-03-14 06:57
  • 阅读 ( 234 )

while循环在计算机编程中是如何工作的

... 大多数新程序员不久就学会了if-else语句、while循环和for循环。但是您可能不了解的循环类型之一是do while循环。让我们讨论一下这个循环是如何工作的,当您想使用它时,我们来看...

  • 发布于 2021-03-14 11:34
  • 阅读 ( 261 )

10个必要的应用程序来增强你的新chromebook

...作、玩游戏、流媒体视频还是听音乐,有一些应用程序是每个用户都需要的。 ...

  • 发布于 2021-03-15 07:10
  • 阅读 ( 214 )

数组和列表在python中的工作方式

...作良好,适合于正确的任务。它不好的是访问整个数组。程序员天生懒惰,所以我会很乐意编写更多更好的代码,如果这意味着我可以使维护更容易,并减少复制粘贴的工作量。 ...

  • 发布于 2021-03-15 17:19
  • 阅读 ( 243 )

所以你想制作iphone应用程序?10个初学者项目

...一个非常简单的教程,显示一个充满彩色正方形的屏幕。每个方块都可以通过触摸屏幕来拖动。就这些。但您将看到这种操作所需的一些功能,当您开发自己的应用程序时,这些功能将派上用场。 ...

  • 发布于 2021-03-16 13:41
  • 阅读 ( 276 )