程序员的10条基本编程原则

描述

编写代码容易,但编写优秀代码却是一项挑战。采纳基本编程原则是确保编写高质量代码的稳妥途径,无论软件项目规模大小,都能保证代码高效、易读、可靠、安全且易维护。

糟糕的代码有多种形式:杂乱、庞大的if-else链、不可靠的程序、变量命名不合理等等。如何编写有效代码?需要有纪律和目的。以下是让您成为更好的编程人员的核心编程原则。

1、保持简洁明了 Keep It Simple, Stupid (KISS)

函数

这听起来有点苛刻,但在编写计算机代码时,这是最重要的原则之一。KISS是什么意思?

它意味着你应该尽可能简单地编写代码。基本编程规则之一是不要陷入过于巧妙的陷阱,或用一大段高级代码来炫耀。如果能用一行代码编写脚本,就用一行代码。

这是一个简单的函数:

 

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

 

相当简单。易于阅读,了解发生了什么。

这种精神中的一个编程原则是使用清晰的变量名称。充分利用编码库并使用现有工具。六个月后回来工作时更容易。保持简单将会在很大程度上避免不必要的困扰。

2、编写DRY代码

“不要重复自己”(DRY)编程原则意味着,简单地说,不要重复代码。这是一个常见的编程错误。编写代码时,避免重复数据或逻辑。如果你曾经在程序中复制并粘贴代码,那么这不是DRY代码。

看看这个脚本:

 

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

 

与其复制行,不如找到一个使用循环的算法。

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

3、Open/Closed原则

按照良好的编程原则进行工作将使您的工作更加高效。

这种编程原则意味着你应该使你的代码可扩展但不可修改。这确保了即使需求改变,也不需要修改代码。这是在发布其他人将使用的库或框架时的重要原则。

例如,假设您正在维护一个GUI框架。您可以发布一个版本供程序员修改并直接集成您发布的代码。然而,当您在四个月后发布一个重要更新时会发生什么呢?

他们的代码会崩溃。这可能会使你的同事非常不高兴。无论以前它有多么有用,他们以后都不想再使用你的库了。

相反,发布代码阻止直接修改并鼓励扩展。像这样的基本编程原则将核心行为与修改行为分离。代码更稳定,更易于维护。

4、组合优于继承

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

依赖继承会引发两个主要问题。首先,继承层次结构可能会变得非常混乱。其次,你在定义特殊情况行为时有更少的灵活性。假设你想实现分享行为:偏向简单的编程原则通常为更有效的最终结果铺平道路。

函数

组合编程更易于编写、更易于维护,并允许定义灵活的行为。每个单独的行为都是它自己的类。通过组合单个行为可以创建复杂行为。

5、单一责任原则

函数编码原则都有一个共同的目标:由更有经验的程序员编写更优质的代码。

单一责任原则规定程序中的每个类或模块应只提供一个特定的功能。正如罗伯特·C·马丁所说:“一个类应该只有一个变化的原因。”

类和模块通常从这样的方式开始。小心,不要在类变得更复杂时增加过多的责任。重构并将它们分解为更小的类和模块。

过度加载类的后果是双重的。首先,在尝试隔离某个模块进行故障排除时会使调试变得复杂。其次,为特定模块创建附加功能会变得更加困难。良好的编程原则可以在问题出现前阻止这些问题。

6、关注点分离

关注点分离的概念是单一责任原则的抽象版本。这个理念指出你应该设计具有不同部分的程序,并且这些部分不应相互访问。

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

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

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

7、你不会需要它(YAGNI)

有些编码原则比其他原则更直接。

这个原则意味着你不应为了未来可能需要的功能而编写代码。计算机编程中最重要的原则之一是不要试图解决不存在的问题。

为了编写DRY代码,程序员可能会违反这个原则。通常,缺乏经验的程序员试图编写最抽象和最通用的代码。然而,过度抽象会导致臃肿的代码,难以维护。

只有在需要时应用DRY编程原则;如果您注意到代码一遍又一遍地写,实现一层抽象。不要牺牲当前代码的批次来考虑太远的未来。

8、文档化你的代码

在谈论编码原则时,很容易忘记最终可能会查看代码的人。

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

以下是一个带有注释的 JavaScript 函数,指导你了解代码:

 

// 如果数字为奇数,则此函数将在输入数字上加上 5,否则返回数字本身
function evenOrOdd(number) {
// 判断数字是否为偶数
if (number % 2 == 0) {
return number;
}
// 如果数字为奇数,则加上 5 并返回
else {
return number + 5;
}
}

 

在编码时留下注释需要一些额外的工作。这需要时间,并会分散你对实际工作的注意力。你对自己的代码相当了解,对吧?谁会在乎呢?但值得记住的是,即使在技术领域,也没有什么是可以被丢弃的。最终的计算机编程原则是什么,如果对面的人最终迷失了方向?

我们建议你多走一步,在你担心事情会变得混乱或不清晰的地方留下注释,特别是在与他人合作时。不要强迫其他开发人员去解读你的语法,以免让他们感到沮丧。

试着写一个程序,放置六个月不动,然后返回修改它。你会庆幸你记录了你的程序,而不是不得不研究每个函数来记住它的工作方式。

9、重构

这个编程原则鼓励你始终以全新的视角审视你的工作。

很难接受,但你的代码不会一开始就是完美的。重构代码意味着审查你的代码,寻找优化的方法,使其更高效,同时保持结果完全相同。这是编写更清洁和高质量代码的考虑。

代码库不断发展。编程原则之一是记住,重新审视、重写甚至重新设计整块代码是完全正常的。

这并不意味着你第一次写程序时失败了;随着时间的推移,你不可避免地会更加熟悉项目。利用这些知识随着你的进步进行调整。

10、一切代价都要编写清晰的代码

函数

除了所有基本的编程原则外,把你的自我留在一边,忘记编写过于聪明的代码。当我们说这句话时,我们指的是那种看起来更像是谜语而不是解决方案的代码。你编码不是为了给陌生人留下深刻印象。你从事这个职业是为了解决问题。

不要试图把大量逻辑塞进一行代码中。在你的注释和文档中留下清晰的说明。如果你的代码易于阅读,通常也易于维护。

优秀的程序员和可读性高的代码是相辅相成的。当必要时留下注释,遵循代码风格指南,并尽可能地站在下一个人的角度考虑。

 

  审核编辑:汤梓红

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分