良好代码变量、函数、文件和文件夹命名的技巧与诀窍
命名是编码中最重要的环节之一,但常常被低估。易读的代码通常始于清晰的命名——无论是变量、函数、文件还是文件夹。以下是许多专业开发者常用的技巧和通用实践。
1. 变量命名
使用描述性但简洁的名称
良好:userCount、emailList、isLoggedIn 不佳:x、temp、a1
JavaScript和PHP使用camelCase
|
|
Python使用snake_case
|
|
Go通常对局部变量使用camelCase,对导出变量使用PascalCase
|
|
2. 函数/方法命名
使用动词使其功能清晰 示例:calculateTotal()、sendEmail()、fetchUserData()
JS、PHP、Go(局部)使用CamelCase
|
|
|
|
|
|
Python使用snake_case
|
|
不要过长,但也不要过于抽象 不佳:f() 良好:calculateInvoiceTotal()
3. 常量命名
所有语言通常都使用ALL_CAPS加下划线_
|
|
|
|
|
|
|
|
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 | 小写 + 下划线 |
| 文件夹 | 小写 | 小写 | 小写 | 小写 |
遵循这些约定,代码将更易读、一致且易于维护,无论使用哪种编程语言。