如何写出别人能读懂的代码


这篇文章介绍了写出可读性高的代码的重要性和方法 , 包括命名规范、注释风格、代码结构和格式等 。文章还给出了一些实际的例子和建议,如编写“小”函数、慎重取名、避免变量重新赋值、避免魔法值、使用尽量少的参数、写注释的艺术、避免重复等,帮助读者提高自己的编码水平和协作能力 。
原文链接:https://stackoverflow.blog/2023/02/13/coding-102-writing-code-other-people-can-read/
未经允许,禁止转载!
作者 | Max Pekarsky 译者 | 明明如月责编 | 夏萌出品 | CSDN 的形式传入 , 那么就不用担心参数的顺序问题 。这种对象通常被称为选项,或者“选项对象” 。但这种方法也有一定的缺点,就是对于预期的参数定义不够明确 。下面就是这种方法在实际中的使用方式:
function get_average_fruit_price(options) { // use options.fruit, options.country, options.year, options.sold_to_industry}6. 写注释的艺术
对于代码注释,尽管存在许多详细的规则,我们这里重点关注一些显而易见的规范 。
注释的作用是为了解释那些本身难以理解的代码部分 。然而 , 如果你能优化这些代码 , 你就应该直接优化它们!比如以下这个例子,原本因为代码含义不明确而被不良注释掩盖:
int f = 75; // f is the temperature in Fahrenheit
这里,让代码直接解释自己的含义会更好 , 将 f 重命名为 temp_in_fahrenheit 。
有时候,你可能由于时间限制,无法即时改进那些难以理解的代码 , 甚至可能会写出一些自己并不满意的代码 。在这种情况下,你需要考虑段代码是否会被其他人使用或者修改 。毕竟,你肯定不希望传递那些难以维护的代码 。
7. 避免重复
【如何写出别人能读懂的代码】DRY 原则 , 全称\”Don\’t Repeat Yourself\”,即“不要重复自己” 。如果你发现在不同的代码段中有重复的部分,可以考虑是否可以将这些部分提炼为一个变量或者一个函数 。
string company_description = “Fruit Trucking & Shipping International ships fruit on our modern fleet of trucks and ships, anywhere in the world!”string company_slogan = “Fruit Trucking & Shipping International: where the best fruits get on the best ships”string company_name = “Fruit Trucking & Shipping International”string company_description = company_name + “ ships fruit on our modern fleet of trucks and ships, anywhere in the world!”string company_slogan = company_name + “: where the best fruit gets on the best ships”比如,如果公司更改了名称(例如,决定只运送苹果),我们只需修改一处 。而不遵循 DRY 原则,则需要寻找并修改所有重复的代码 。
再来一个例子:假设所有的温度输入都是华氏度,而我们需要的输出是摄氏度 。在处理每一个温度的时候 , 你都需要进行 F – 32 * 5/9 的转换 。如果你发现现在的系统开始使用开尔文温度,那么你就必须在所有需要温度的地方更新为 F – 32 * 5/9 + 273.15 。
一个更优的解决方案是将这个转换封装成一个函数:
function fahrenheit_to_celsius(temp_in_farenheit) { return temp_in_farenheit – 32 * 5/9;}
现在如果需要转换为开尔文温度,你只需要在一处进行计算更新 。在这个例子中,你可能只需要创建一个新的函数 fahrenheit_to_kelvin() , 然后将所有的 fahrenheit_to_celsius() 调用更改为 fahrenheit_to_kelvin() 。这样,你就明确知道在哪里进行了更改 , 不必在代码中搜索所有的“温度”提及 。
但也要注意 , DRY 原则有时可能被过度应用 。你并不需要过早优化代码,因此,一个好的备选原则是 WET,即\”Write Everything Twice\” 。当你第三次需要编写某段代码时,试着将其提取为单独的函数或变量可能是一个好方法 。随着时间的推移,你会形成自己的判断,知道何时需要复用同样的代码片段(如上述的例子),何时几行重复的代码实际上是不同过程中的一部分 。
学以致用
了解杰出的编程实践就像是了解高效的健身方法 , 只有将这些实践真正运用到编程中,你才能真正获益 。
了解所有的肌肉群并不意味着你需要一次性对它们全部进行训练 。应当从小事做起:下一次编程时,试着提高你的命名精度 。接着,试图编写更简洁版的函数 。然后,参考这篇文章,检查你可能忽视的部分 。将这视为你每周开始执行的几项健身训练 。
记住,我们编写代码不仅是为了让未来的同事更容易理解,更是为了我们自己在未来可以更轻松地理解和维护 。我们无需对规则进行教条式的坚守,只需尽可能保持清晰 。
你很快会发现 , 编写简洁的代码需要在代码的精简性和功能性之间进行权衡 。例如,如果你在时间压力下写一个一次性的脚本来解析数据,且你确信再也不会有人看到这个脚本 , 你可以少花一些时间编写清晰的代码 。但随着时间的推移,重视代码的可维护性和可读性,不仅能使你更有效地解决问题 , 也能使你在编程技能上超越许多初级开发者 。
当你开始遵循一些基本的软件开发原则,你就已经在从一名硬编码者向一名能够更好地维护和构建软件的专业开发者转变了 。
对于提高代码可读性和整洁度 , 你有什么心得和体会?
以上就是本站小编关于如何写出别人能读懂的代码的详细内容,希望对大家有所帮助!

猜你喜欢