一、Java 命名规范
Java 遵循 驼峰命名法(CamelCase),强调可读性和一致性。
1. 类(Class)
规则:大驼峰法,首字母大写,名词或名词短语。
示例:
public class UserService { ... } // 服务类 public class OrderController { ... } // 控制器类 public class StringUtils { ... } // 工具类
2. 变量(Variable)
规则:小驼峰法,首字母小写,避免缩写,体现用途。
示例:
String userName; // 用户名称 int maxRetryCount = 3; // 最大重试次数 List<Order> orderList; // 订单列表
3. 方法(Method)
规则:小驼峰法,动词或动词短语,体现操作行为。
示例:
public void calculateTotalPrice() { ... } // 计算总价 private String formatErrorMessage() { ... } // 格式化错误信息
4. 常量(Constant)
规则:全大写字母,单词间用下划线分隔,使用
static final。示例:
public static final int MAX_CONNECTION = 100; public static final String DEFAULT_TIMEZONE = "UTC";
5. 包(Package)
规则:全小写字母,域名反写(如
com.company.project)。示例:
com.example.ecommerce.dao // 数据访问层 com.example.ecommerce.service // 服务层
二、MySQL 数据库命名规范
MySQL 强调 清晰性 和 可维护性,建议使用小写字母和下划线组合。
1. 数据库(Database)
规则:全小写,使用项目名称或功能描述,避免特殊字符。
示例:
CREATE DATABASE ecommerce_db; -- 电商数据库 CREATE DATABASE report_analytics; -- 报表分析库
2. 表(Table)
规则:全小写,使用复数形式,体现存储内容。
示例:
CREATE TABLE users ( ... ); -- 用户表 CREATE TABLE product_reviews ( ... ); -- 商品评价表
3. 字段(Column)
规则:全小写,使用下划线分隔,避免保留字。
示例:
user_id INT PRIMARY KEY, -- 用户ID created_at DATETIME, -- 创建时间 is_deleted TINYINT(1) -- 是否删除(布尔值)
4. 索引(Index)
规则:明确用途,格式为
idx_表名_字段。示例:
CREATE INDEX idx_users_email ON users(email); -- 用户邮箱索引 CREATE INDEX idx_orders_user_id ON orders(user_id); -- 订单用户ID索引
5. 主键与外键
主键:建议直接命名为
id或表名_id(如user_id)。外键:格式为
fk_当前表_关联表。示例:
ALTER TABLE orders ADD CONSTRAINT fk_orders_users FOREIGN KEY (user_id) REFERENCES users(id);
三、Vue 项目命名规范
Vue 项目遵循 JavaScript 社区约定,同时参考官方风格指南。
1. 项目名称
规则:全小写,使用连字符分隔(kebab-case)。
示例:
my-vue-project # 项目根目录 admin-dashboard # 管理后台项目
2. 组件(Component)
规则:大驼峰法(PascalCase)或 连字符(kebab-case),推荐前者。
示例:
<!-- 文件名:UserProfile.vue --> <template> <div class="user-profile">...</div> </template> <!-- 使用方式 --> <UserProfile /> <!-- PascalCase --> <user-profile /> <!-- kebab-case(不推荐) -->
3. 变量与方法
规则:小驼峰法,体现用途。
示例:
data() { return { userList: [], // 用户列表 isLoading: false // 加载状态 }; }, methods: { fetchUserData() { ... }, // 获取用户数据 handleSubmit() { ... } // 处理表单提交 }
4. 目录与文件
规则:全小写,连字符分隔,体现模块功能。
示例:
src/ components/ UserCard.vue // 用户卡片组件 SearchInput.vue // 搜索输入框组件 views/ HomePage.vue // 首页 UserProfile.vue // 用户详情页
5. Vuex Store 模块
规则:小驼峰法,文件名以
.js或.ts结尾。示例:
// store/modules/user.js export default { state: { ... }, mutations: { ... }, actions: { ... } };
四、通用原则
一致性:团队内部需统一风格,避免混用。
可读性:命名需清晰表达用途(如
getUserInfo优于getData)。避免保留字:如 MySQL 中的
order、group等字段需用反引号包裹。长度控制:MySQL 字段名建议不超过 64 字符,Java 类名不宜过长。
五、对比总结
通过遵循这些规范,可以显著提升代码的可维护性和团队协作效率。建议结合工具(如 ESLint、Checkstyle)自动化检查命名风格。