编程命名规范最佳实践:变量、函数、文件和文件夹命名技巧

本文详细介绍了编程中变量、函数、文件和文件夹的命名规范,涵盖了JavaScript、PHP、Python和Go等主流语言的命名约定,帮助开发者编写更清晰、易维护的代码。

良好代码变量、函数、文件和文件夹命名的技巧与诀窍

命名是编码中最重要的环节之一,但常常被低估。易读的代码通常始于清晰的命名——无论是变量、函数、文件还是文件夹。以下是许多专业开发者常用的技巧和通用实践。

1. 变量命名

使用描述性但简洁的名称

良好:userCount、emailList、isLoggedIn 不佳:x、temp、a1

JavaScript和PHP使用camelCase

1
2
let userCount = 10;
let isActive = true;

Python使用snake_case

1
2
user_count = 10
is_active = True

Go通常对局部变量使用camelCase,对导出变量使用PascalCase

1
2
var userCount int
var UserName string  // 可导出

2. 函数/方法命名

使用动词使其功能清晰 示例:calculateTotal()、sendEmail()、fetchUserData()

JS、PHP、Go(局部)使用CamelCase

1
function getUserInfo($id) { ... }
1
function sendEmail(to, subject) { ... }
1
func fetchUserData(id int) User { ... }

Python使用snake_case

1
2
def fetch_user_data(user_id):
    pass

不要过长,但也不要过于抽象 不佳:f() 良好:calculateInvoiceTotal()

3. 常量命名

所有语言通常都使用ALL_CAPS加下划线_

1
2
define('MAX_LOGIN_ATTEMPTS', 5);
const PI = 3.14;
1
const MAX_LOGIN_ATTEMPTS = 5;
1
MAX_LOGIN_ATTEMPTS = 5
1
const MaxLoginAttempts = 5  // Go倾向于对导出常量使用PascalCase

4. 文件命名

根据内容/模块使用文件名。避免空格,遵循各自语言的惯例:

语言 文件约定
PHP UserController.php(类使用PascalCase)
JS/TS userController.js或user_controller.js
Python user_controller.py(snake_case)
Go user_controller.go(小写,下划线)

对于代表单个实体的模块使用单数名词,需要时对集合使用复数。

5. 文件夹/目录命名

文件夹最好使用小写且具有描述性: /controllers、/models、/services、/utils

避免过短的缩写: /srv → 更好是/services 文件夹结构通常遵循项目架构:

语言 示例结构
Go /cmd、/internal、/pkg、/tests
JS/TS /src、/lib、/tests、/config
Python /project_name、/tests、/configs、/scripts
PHP /app/Controllers、/app/Models、/app/Services

6. 其他通用技巧

一致性 选择一个约定并在整个项目中使用。不要无故混合camelCase和snake_case。

简洁但清晰 不要过长,但名称必须足够描述性以理解其含义。

使用领域语言 变量或函数名称应与应用程序领域相关。 例如:invoiceTotal比sum1更清晰。

需要时使用前缀/后缀 布尔值 → isLoggedIn、hasPermission 数组/列表 → userList、emailArray

导出与局部 Go:导出使用PascalCase,局部使用camelCase。 JS/TS:没有特定规则,但通常使用camelCase。

💡 快速摘要:语言与约定

元素 JS/TS PHP Python Go
变量 camelCase camelCase snake_case camelCase / PascalCase(导出)
函数 camelCase camelCase snake_case camelCase / PascalCase(导出)
常量 ALL_CAPS ALL_CAPS ALL_CAPS PascalCase(导出)
文件 camelCase / snake_case PascalCase snake_case 小写 + 下划线
文件夹 小写 小写 小写 小写

遵循这些约定,代码将更易读、一致且易于维护,无论使用哪种编程语言。

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计