From 9383902947943abce7b9a30fbde055aac8e1e740 Mon Sep 17 00:00:00 2001 From: YuanHui <31339626+alsesa@users.noreply.github.com> Date: Tue, 21 Jan 2025 17:25:24 +0800 Subject: [PATCH] [logseq-plugin-git:commit] 2025-01-21T09:25:23.910Z --- journals/2025_01_21.md | 1 + pages/编程规范.md | 36 ++++++++++++++++++++++++++++++++++++ 2 files changed, 37 insertions(+) create mode 100644 journals/2025_01_21.md create mode 100644 pages/编程规范.md diff --git a/journals/2025_01_21.md b/journals/2025_01_21.md new file mode 100644 index 0000000..d14795a --- /dev/null +++ b/journals/2025_01_21.md @@ -0,0 +1 @@ +- [[编程规范]] \ No newline at end of file diff --git a/pages/编程规范.md b/pages/编程规范.md new file mode 100644 index 0000000..ea9788b --- /dev/null +++ b/pages/编程规范.md @@ -0,0 +1,36 @@ +- Python项目 + - | 名称类型 | 命名格式 | 示例 | 说明 | + |--|--|--|--| + | 变量名 | 小写字母,单词间用下划线 `_` 分隔(snake_case) | `user_name`, `total_count`, `file_path` | 应具有描述性,尽量避免单字母变量名,除非是循环中的临时变量,且不能使用 Python 内置关键字 | + | 函数名 | 小写字母,单词间用下划线 `_` 分隔(snake_case) | `def calculate_average(numbers):`, `def get_user_info(user_id):` | 通常使用动词或动词短语,清晰表达函数功能 | + | 类名 | 首字母大写的驼峰命名法(CamelCase) | `class Person`, `class DataProcessor`, `class UserProfile` | 通常是名词或名词短语,代表所创建对象的类型 | + | 常量名 | 全部大写字母,单词间用下划线 `_` 分隔 | `MAX_CONNECTIONS`, `PI_VALUE`, `DEFAULT_TIMEOUT` | 一般在模块级别定义,存储不会被修改的值 | + | 模块名 | 小写字母,单词间用下划线 `_` 分隔(snake_case) | `math_utils`, `file_operations`, `data_processing` | 名称应反映模块功能,方便导入时理解其内容 | + | 包名 | 小写字母,单词间用下划线 `_` 分隔(snake_case) | `my_package`, `utilities`, `web_framework` | 与模块命名类似 | + | 类的私有属性和方法 | 名称前添加双下划线 `__` | `class MyClass: __private_attribute = 1`, `def __private_method(self):` | Python 会对双下划线开头的名称进行名称修饰,使外部难以直接访问,是一种约定 | + | 特殊方法 | 双下划线包围 | `__init__`, `__str__`, `__len__` | 遵循 Python 的内置约定 | +- Vue项目 + - | 名称类型 | 命名格式 | 示例 | 说明 | + |--|--|--|--| + | 组件名 | 首字母大写的驼峰命名法(PascalCase) | `MyComponent.vue`, `UserProfile.vue` | 组件名应清晰地表明其功能或代表的模块,在 Vue 单文件组件中使用,易于识别和区分不同组件 | + | 组件内的数据属性 | 小写字母,单词间用下划线 `_` 分隔(snake_case) | `data() { return { user_name: '', total_count: 0 }; }` | 通常表示组件内部的数据状态,遵循 Vue 推荐的风格,便于数据的操作和绑定 | + | 组件内的计算属性 | 小写字母,单词间用下划线 `_` 分隔(snake_case) | `computed: { full_name() { return this.first_name + ' ' + this.last_name; } }` | 以函数的形式定义,其返回值可被视为组件的数据,通常根据已有数据进行计算得出 | + | 组件内的方法 | 小写字母,单词间用下划线 `_` 分隔(snake_case) | `methods: { handle_click() { // 处理点击事件 } }` | 用于处理组件的各种事件和业务逻辑,一般使用动词或动词短语,使方法的功能清晰 | + | 组件内的事件名称 | 小写字母,单词间用连字符 `-` 分隔(kebab-case) | `` | 在模板中绑定事件时,使用 kebab-case 符合 Vue 的语法要求 | + | Vuex 的状态(State) | 小写字母,单词间用下划线 `_` 分隔(snake_case) | `const state = { user_info: null };` | 存储 Vuex 中的状态数据,方便状态管理和更新 | + | Vuex 的 mutations 名称 | 大写字母,单词间用下划线 `_` 分隔 | `const mutations = { SET_USER_INFO: (state, payload) => {... } }` | 一般使用大写,使操作数据的动作更具标志性,明确表示修改状态的意图 | + | Vuex 的 actions 名称 | 小写字母,单词间用下划线 `_` 分隔(snake_case),常使用动词短语 | `const actions = { fetch_user_info({ commit }) {... } }` | 用于异步操作或复杂的业务逻辑处理,通过触发 mutations 来修改状态 | + | Vue 路由名称 | 小写字母,单词间用连字符 `-` 分隔(kebab-case) | `const routes = [{ path: '/user-profile', name: 'user-profile', component: UserProfile }]` | 在 Vue Router 中使用,与 URL 结构风格一致,方便记忆和维护 | + | Vue 路由的路径 | 小写字母,单词间用斜杠 `/` 和连字符 `-` 分隔 | `/user-profile`, `/product-list` | 通常与路由名称相匹配,代表页面的 URL 路径,使用连字符分隔单词,使路径清晰可读 | +- Java + - | 名称类型 | 命名格式 | 示例 | 说明 | + |--|--|--|--| + | 类名 | 首字母大写的驼峰命名法(PascalCase) | `public class UserProfile`, `class DataAnalyzer` | 通常是名词或名词短语,代表所创建对象的类型,清晰地表明类的用途 | + | 接口名 | 首字母大写的驼峰命名法(PascalCase) | `interface Runnable`, `interface DataSource` | 一般使用名词或形容词,描述接口所提供的服务或功能 | + | 方法名 | 首字母小写的驼峰命名法(camelCase) | `public void calculateAverage()`, `private int getUserAge()` | 通常使用动词或动词短语,明确表示方法要执行的操作 | + | 变量名 | 首字母小写的驼峰命名法(camelCase) | `int userAge`, `String userName` | 具有描述性,能够清晰地表达变量所存储的数据内容,避免使用单个字母或无意义的名称 | + | 常量名 | 全部大写字母,单词间用下划线 `_` 分隔 | `public static final int MAX_CONNECTIONS = 100`, `final double PI_VALUE = 3.14159` | 存储不会被修改的值,一般在类级别定义,使用大写字母和下划线组合,方便区分 | + | 包名 | 全部小写字母,使用域名倒序,单词间用点 `.` 分隔 | `com.example.project`, `org.apache.commons` | 通常使用公司或组织的域名倒序作为前缀,后续单词使用小写,体现包的层次结构和功能 | + | 枚举名 | 首字母大写的驼峰命名法(PascalCase) | `enum Season`, `enum UserRole` | 表示一组有限的常量,通常为名词或名词短语,清晰描述枚举的类别 | + | 静态变量名 | 首字母小写的驼峰命名法(camelCase),可加 `s_` 作为前缀(非强制) | `private static int s_count`, `public static String staticMessage` | 存储类的静态数据,使用 `s_` 前缀可帮助识别静态变量,但不是必需的 | + | 静态方法名 | 首字母小写的驼峰命名法(camelCase) | `public static void printMessage()`, `private static int calculateSum()` | 可以直接通过类名调用,通常表示与类相关但不依赖实例的操作 | \ No newline at end of file