update
This commit is contained in:
5
.gitignore
vendored
5
.gitignore
vendored
@ -1 +1,4 @@
|
||||
/result.md
|
||||
/result.md
|
||||
/CLAUDE.md
|
||||
/.claude
|
||||
/AGENTS.md
|
||||
|
||||
@ -15,7 +15,7 @@ NodeJS, NSIS, axios, pinia, Less, 微信小程序等现代程序知识
|
||||
- 经典示例:链式表删除操作,10 行 if 判断优化为 4 行无条件分支
|
||||
- 好的品味是一种需要经验的直觉
|
||||
- 消除边界情况总是比添加条件判断更好
|
||||
- UTF-8 是伟大的编码,所有文本文件都应该使用它
|
||||
- UTF-8 是伟大的编码,请使用 UTF-8 不带 BOM 读写所有文本文件,包括代码注释、文档等
|
||||
|
||||
2. 实用主义 - 我的信仰:我是个该死的实用主义者
|
||||
|
||||
|
||||
25
Java_Common.md
Normal file
25
Java_Common.md
Normal file
@ -0,0 +1,25 @@
|
||||
## 系统上下文
|
||||
|
||||
这是一个 Java
|
||||
|
||||
- 部分 timi-* 系列依赖属于本地项目,如果权限允许可以,你可以文件绝对路径 E:\IDEAProject\timi-* 访问他们的源码
|
||||
|
||||
## 技术栈和限制
|
||||
|
||||
- 运行时:JDK21
|
||||
- 语言:Java
|
||||
|
||||
## Java 代码约束
|
||||
|
||||
- 使用 tab 缩进,而不是空格
|
||||
- 类、方法、变量注释需要符合 javadoc 标准,拥有完整的类型、参数、返回、异常等说明
|
||||
- 优先使用字符串模板,且是 JDK15 的 "".formatted() 方法
|
||||
- 字符串超长且动态时使用 StringBuilder
|
||||
- 数值比较应该使用小于,即使常量在前变量在后
|
||||
- 仅使用上述工具。除非堆栈无法合理地解决外部依赖关系,否则不要引入外部依赖关系
|
||||
- 在编写自定义实现之前,首选所选工具中的官方 API
|
||||
- 该项目目前没有测试, 除非明确要求,否则不要添加测试
|
||||
- 所有文字、评论和文档均为中文
|
||||
- 不在没有充分理由的情况下添加外部库
|
||||
- 不用繁重的计算阻塞主线程, 卸载或推迟
|
||||
- 重复 API 调用必要时通过存储进行缓存或协调
|
||||
8
Java_FX.md
Normal file
8
Java_FX.md
Normal file
@ -0,0 +1,8 @@
|
||||
## 系统上下文
|
||||
|
||||
这是一个 JDK21 + JavaFX 的桌面端程序框架
|
||||
|
||||
## 技术栈和限制
|
||||
|
||||
- 语言:Java
|
||||
- 框架: JavaFX
|
||||
4
Java_Spring.md
Normal file
4
Java_Spring.md
Normal file
@ -0,0 +1,4 @@
|
||||
## Spring 相关代码约束
|
||||
|
||||
- 单行 SQL 请直接使用 MyBatis 注解写在 Mapper 接口里
|
||||
- 发生换行的 SQL 请写在 MyBatis xml 中,以便维护
|
||||
@ -6,10 +6,11 @@
|
||||
- 在编写自定义实现之前,首选所选工具中的官方 API
|
||||
- 该项目目前没有测试, 除非明确要求,否则不要添加测试
|
||||
- 尽可能定义 Typescript 类型和进行 JSDoc 注释
|
||||
- 对于 Promise 和 async/await 函数,请使用 async/await 而不是 .then()
|
||||
- 即使不使用 Promise 的返回值,也请使用 await
|
||||
- 路由、Pinia、组件命名规则应符合官方建议
|
||||
- 需要适配深色模式
|
||||
- 所有文字、评论和文档均为中文
|
||||
- 不在没有充分理由的情况下添加外部库
|
||||
- 不用繁重的计算阻塞主线程, 卸载或推迟
|
||||
- 重复 API 调用必要时通过存储进行缓存或协调
|
||||
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
## 前端样式约束
|
||||
|
||||
- LESS 必须使用层级特性,这是 LESS 最重要的特性
|
||||
- CSS、LESS 的属性应当尽量缩写,如使用 background 而不是 background-color
|
||||
- CSS、LESS 的单位优先使用 rem,除非 % 或 vw vh 等比例单位
|
||||
- CSS、LESS 的属性应该按照属性名长度由短到长排序以便维护
|
||||
|
||||
@ -5,6 +5,5 @@
|
||||
- TDesign UI组件用于常见 UI(导航栏、卡片、选项卡、下拉菜单、模态、表单)。不要重新实现 TDesign 已经提供的功能
|
||||
- 保持类字符串可读且有序:布局 → 间距 → 排版 → 颜色 → 状态 → 反应性变体
|
||||
- 所有颜色都应该统一在一个文件中定义。**如果没有必要,不要使用自定义颜色**
|
||||
- 样式应该写在 Vue 组建的 style 中,**不要在原生 html 标签使用 style 属性**
|
||||
- 尽量使用 TDesign 原生图标,即使你无法搜索到你想要的图标,**禁止使用原生 SVG**
|
||||
- 使用 TDesign 弹窗、提示等反馈
|
||||
|
||||
34
WebVue.md
34
WebVue.md
@ -1,5 +1,37 @@
|
||||
## 前端 Vue 约束
|
||||
|
||||
- Vue 自定义组件中,使用模板标签时应该使用全小写,如 <custom-component />-
|
||||
- Vue 模板中如果要使用变量则应该使用 v-text 而不是插值符号以避免渲染延时,如果只是纯文本不要使用 v-text
|
||||
- Vue Composition API 的代码应该按功能模块分组,相同的变量、函数等在一个片段,公共的在脚本头部,不同模块之间变量、函数不穿插
|
||||
- 保持组件小而集中, 提取逻辑的可组合项
|
||||
- 样式应该写在 Vue 组建的 style 中,**不要在原生 html 标签使用 style 属性**
|
||||
- 保持组件小而集中, 提取逻辑的可组合项
|
||||
|
||||
## 前端 Vue 组件代码风格约束
|
||||
|
||||
- 使用 Composition API,
|
||||
- 使用 setup 语法糖
|
||||
- 使用 unplugin-auto-import 和 unplugin-vue-components 自动导入
|
||||
- Composition API 的代码应该按功能分区域,如以下代码示例
|
||||
|
||||
```ts
|
||||
|
||||
// 引用、公共变量、函数
|
||||
const common = ref('common');
|
||||
|
||||
// ---------- 功能 1 ----------
|
||||
|
||||
// 功能 1 变量
|
||||
// 功能 1 计算属性
|
||||
// 功能 1 函数
|
||||
// 功能 1 生命周期
|
||||
onMounted(() => {});
|
||||
|
||||
// ---------- 功能 2 ----------
|
||||
|
||||
// 功能 2 变量
|
||||
// 功能 2 计算属性
|
||||
// 功能 2 函数
|
||||
// 功能 2 生命周期
|
||||
onMounted(() => {});
|
||||
|
||||
```
|
||||
Reference in New Issue
Block a user