」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > 骯髒的代碼:避免它的簡單規則

骯髒的代碼:避免它的簡單規則

發佈於2025-03-23
瀏覽:494

Dirty Code: Simple Rules to Avoid It每个开发人员都面对它:肮脏的代码 - 看起来像是急着写的代码,撒上魔术数字,重复的块和隐秘的可变名称。它几乎没有工作。但是要维护吗?那是一场噩梦。

如果您在重构别人的代码(甚至您自己的代码)时曾经喃喃自语,则本文适合您。以下是一些简单的规则,可以使您的代码保持清洁,可读和未来。

什么是肮脏的代码?

肮脏的代码是:

很难读取或理解。
缺乏结构和一致性。

    很难修改或调试而不打破其他内容。
  • 通常会发生开发人员:
  • 在紧迫的截止日期下工作。

跳过代码评论。

    不遵循最佳实践或标准。
  1. 为什么肮脏的代码问题?

团队混乱:新开发人员花费额外的时间,只是试图了解正在发生的事情。 肮脏的代码今天可能会完成工作,但这对您的团队和将来的自我来说是一个滴答滴答的时间炸弹。

1。遵循单个责任原则(srp)
  • 每个功能,方法或类都只能做一件事。如果您发现自己的职责过多,请将其分解为较小的单位。
  • ❌不好示例:
  • def Process_user_data(用户): 用户['age'] =用户['age'] 1 DB.Save(用户) 打印(f“用户{user ['name']}更新))

def update_user_age(用户): 用户['age'] = 1 def save_user_to_db(用户): DB.Save(用户) def log_user_update(用户): 打印(f“用户{user ['name']}更新)) 现在每个函数都有一个清晰的工作,使代码更易于测试和修改。

2。避免魔术数字和字符串 硬编码的值(“魔术数”)使代码不可读且难以维护。改用常数。

❌不好示例:


if(statuscode === 404){ console.log(“未找到”); }
def process_user_data(user):
    user['age'] = user['age']   1  
    db.save(user)  
    print(f"User {user['name']} updated")  

const not_found = 404; if(statuscode === not_found){ console.log(“未找到”); }

常数not_found是自我解释的,使您的代码易于阅读。
def update_user_age(user):
    user['age']  = 1  

def save_user_to_db(user):
    db.save(user)  

def log_user_update(user):
    print(f"User {user['name']} updated")  

3。编写描述性变量和函数名称

您的变量名称应反映其代表。避免缩写和神秘名称。

❌不好示例:

int a = 5; 字符串S =“ John”;


int userage = 5; 字符串用户名=“ John”;
def process_user_data(user):
    user['age'] = user['age']   1  
    db.save(user)  
    print(f"User {user['name']} updated")  

相同的功能也适用。避免使用模糊的名称(例如)或process()。要具体。


4。干燥(不要重复自己)
def update_user_age(user):
    user['age']  = 1  

def save_user_to_db(user):
    db.save(user)  

def log_user_update(user):
    print(f"User {user['name']} updated")  

如果您要复制和粘贴代码,那就做错了。重复的代码使错误修复了噩梦。抽象重复逻辑中的函数或类。

❌不好示例:

print(“欢迎,约翰”) 印刷(“欢迎,玛丽”)

def engret_user(name): 打印(f“欢迎,{name}”) etch_user(“约翰”) etch_user(“玛丽”)


5。保持您的函数短
int a = 5;  
String s = "John";  

长函数使理解和测试特定行为变得更加困难。


6。使用很少的评论
int userAge = 5;  
String userName = "John";  

❌不好示例:

//通过1增量计数器 计数器=计数器1;

counter = 1;


使用评论来阐明为什么做出某个决定,而不是代码在做什么。

print("Welcome, John")  
print("Welcome, Mary")  


遵循一致的编码样式指南(例如,python的pep8,javaScript的eslint)。

使用适当的凹痕。
def greet_user(name):
    print(f"Welcome, {name}")  

greet_user("John")  
greet_user("Mary")  

组相关代码在一起。 良好的格式使代码无需额外的努力即可清洁和可读。


您减少了他人的心理负担。

您使调试,扩展和改进变得更加容易。

您看起来像是一个重视质量的专业开发人员。
[2 避免肮脏的代码并不难 - 只需纪律即可。遵循以下简单的规则:


坚持单一的责任原则。

避免魔术数字。
def greet_user(name):
    print(f"Welcome, {name}")  

greet_user("John")  
greet_user("Mary")  

使用清晰的描述性名称。


干燥重复代码。

保持函数短。
def greet_user(name):
    print(f"Welcome, {name}")  

greet_user("John")  
greet_user("Mary")  

明智地使用注释。

干净的代码与完美无关;这是关于使您的工作可维护和理解。您的未来自我 - 和您的团队 - 将谢谢您。 现在去重构您一直在忽略的凌乱代码! ?

版本聲明 本文轉載於:https://dev.to/kaankaya/dirty-code-simple-rules-to-avoid-it-1ckm?1如有侵犯,請聯繫[email protected]刪除
最新教學 更多>

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3