上位机知识篇---命名规则

在计算机领域,命名规则是为了让文件、变量、函数等命名更规范、易读、易维护而形成的约定或规定。不同场景(如文件命名、编程语言、数据库等)有不同的规则,下面分类介绍:

一、通用核心原则(所有场景都适用)

  1. 有意义 :名称要能体现内容 / 功能,比如用 user_age 而不是 a1
  2. 简洁 :在表意清晰的前提下尽量简短,比如 avg_scoreaverage_score_of_students 更好。
  3. 避免关键字 :不能用系统 / 语言自带的关键字(如 ifclassint 等)。
  4. 一致性:同一项目中保持命名风格统一(比如全用下划线或全用驼峰)。

二、文件 / 文件夹命名规则

不同操作系统对文件名的限制不同,但有通用规范:

1. 禁止使用的字符

所有系统都禁止:/(路径分隔符)。

Windows 额外禁止:\ : * ? " < > |(这些字符在 Windows 中有特殊用途)。

2. 大小写敏感性
  • Windows/macOS(默认) :不区分大小写(比如 file.txtFile.txt 视为同一个文件)。
  • Linux/macOS(部分配置) :区分大小写(file.txtFile.txt 是两个不同文件)。
3. 长度限制
  • Windows:文件名 + 路径总长度不能超过 260 字符(否则无法保存)。
  • Linux/macOS:通常限制在 255 字符以内。
4. 最佳实践
  • 用小写字母(避免大小写混淆)。
  • 用下划线 _ 或中划线 - 分隔单词(不用空格),比如 user_info.csvproject-report.pdf
  • 包含扩展名(如 .txt.jpg.py),明确文件类型。
  • 例子:
    ✅ 好:student_grade_list.xlsxlogo_2023.png
    ❌ 差:新建文件1.txt(有空格和无意义数字)、file?123.doc(含特殊字符)

三、编程语言中的命名规则

不同编程语言有不同的 "约定俗称"(非强制,但违反会降低可读性)。

1. C/C++
  • 变量 / 函数 :用 下划线命名法 (全小写,单词用下划线分隔)。
    例:int student_age;void calculate_avg_score()
  • 宏定义 / 常量 :全大写,下划线分隔。
    例:#define MAX_SIZE 100const int PI = 3.14;
  • 注意 :区分大小写(ageAge 是两个变量),不能以数字开头(如 123name 错误)。
2. Python
  • 变量 / 函数 :下划线命名法(全小写)。
    例:user_name = "Tom"def get_user_info():
  • 帕斯卡命名法 (每个单词首字母大写,无分隔符)。
    例:class StudentInfo:class Car:
  • 常量 :全大写,下划线分隔(约定,非强制)。
    例:MAX_STUDENTS = 50
  • 特殊变量 :前后各两个下划线(系统内置,避免自定义),如 __init__(类的初始化方法)。
3. Java
  • 变量 / 方法小驼峰命名法 (第一个单词小写,后续单词首字母大写)。
    例:int studentAge;void calculateAvgScore()
  • :帕斯卡命名法(每个单词首字母大写)。
    例:class StudentInfoclass User
  • 常量 :全大写,下划线分隔。
    例:public static final int MAX_SIZE = 100;
4. JavaScript
  • 变量 / 函数 :小驼峰命名法(和 Java 类似)。
    例:let userName = "Tom";function getUserInfo() {}
  • :帕斯卡命名法。
    例:class Student {}
  • 常量 :全大写,下划线分隔(通常用 const 声明)。
    例:const MAX_NUM = 10;
5. 其他语言补充
  • PHP :变量名前加 $,变量 / 函数用下划线或小驼峰(两种风格都常见),例:$user_name$userName
  • Go :变量 / 函数名首字母大写表示 "公开"(可被其他包访问),小写表示 "私有",例:func GetInfo()(公开)、func getInfo()(私有)。

四、数据库命名规则

  • 表名 / 字段名 :通常用小写,下划线分隔(避免关键字)。
    例:表 student、字段 student_idstudent_name
  • 避免关键字 :不用 userorder 等(数据库自带关键字),可加前缀,如 t_user(t 表示 table)、f_order(f 表示 field)。

五、前端(HTML/CSS)命名规则

  • HTML 的 id/class
    • 用小写,中划线 - 分隔(推荐),例:class="user-info"id="header-nav"
    • 避免用数字开头,不包含特殊字符。
  • CSS 类名
    常用 BEM 命名法 (块 - 元素 - 修饰符),例:header-logo_activeheader是块,logo是元素,active是修饰符)。

总结

核心是 "让名字自己说明含义",不同场景遵循对应的约定即可。记住:好的命名能让别人(或未来的你)一眼看懂含义,减少沟通成本

相关推荐
weixin_462446235 天前
【原创实践】python版playwright截取多个图
开发语言·python·策略模式
MC丶科6 天前
Java设计模式漫画英雄宇宙之策略模式:从支付系统重构到软考高频考点(附完整代码 + 面试高频问法)
java·设计模式·重构·策略模式
benxin12346 天前
macOS 上使用 Homebrew 安装和配置 PostgreSQL 的详细步骤
macos·postgresql·策略模式
佛祖让我来巡山8 天前
设计模式深度解析:策略模式、责任链模式与模板模式
设计模式·责任链模式·策略模式·模版模式
王柏龙10 天前
Win11 无法找到本地组策略编辑器的解决方法
windows·策略模式
hai-chu11 天前
将 Neo4j 安装为 macOS 服务
macos·策略模式·neo4j
6***x54514 天前
Java设计模式之策略模式
java·设计模式·策略模式
miss_you121314 天前
策略模式 + 模板方法 + 注册式工厂 统一设计方案(营销优惠场景示例)
设计模式·工厂方法模式·策略模式·模板方法模式
章鱼哥73014 天前
Java 策略模式 + 聚合对象:实现多模块的统计与聚合,快速扩展的实战
java·开发语言·策略模式
大佬,救命!!!15 天前
C++函数式策略模式代码练习
开发语言·c++·学习笔记·学习方法·策略模式·迭代加深·多文件编译