编码规范、代码风格、电脑使用规范

持续更新中……

### Pascal Case:Pascal 大驼峰式命名法 例如:UserInfo, UserName ### Camel Case:小驼峰式命名法 例如:userInfo, userName ## 前端 ### HTML - 标签名必须使用小写字母,标签使用要遵循其语义 - 标签属性名必须使用小写字母,属性必须用双引号("")包围,自定义属性以 data- 作为前缀 - bool 类型的属性不需要添加属性值 - class 使用短横线式(kebab-case)命名,单词之间以 '-' 分隔,不允许使用大写字母 - id 必须保证同一个页面内唯一,使用小驼峰式命名(camelCase) - 如果使用第三方组件库,尽可能二次封装组件库,减少自定义组件的使用。 - 引用的文件名称使用短横线式(kebab-case)命名,静态资源文件一般放在类似 assets/images 的目录中 ### CSS / LESS / SCSS - 类名使用 kebab-case(短横线)式命名,禁止出现大写字母 - 禁止使用 style 行内样式 - 样式推荐使用 TailwindCSS 或 UnoCSS,尽可能避免编写和维护大量特定样式 ### JavaScript - 变量名使用小驼峰式命名(camelCase) - 函数名使用小驼峰式命名(camelCase) - 函数名称一般以动词+名字的形式命名,例如 getUserInfo(), initData(), loadTableData() - 事件名称一般以名词+handle 的形式命名,例如 editHandle, selectedHandle - 查询前缀一般添加 get,新增前缀一般加 add 或者 create,更新前缀一般添加 update 或者 edit,删除前缀一般添加 delete 或者 remove - 文件名使用小驼峰式命名(camelCase) ### TypeScript - 使用 PascalCase 为类型、枚举命名 - 使用 camelCase 为属性、变量、函数命名。 - 尽可能使用完整的单词拼写命名 - 共享的类型应该在 types.ts 里定义 - 在一个文件里,类型定义应该出现在顶部 - 使用 undefined,不要使用 null ## 服务端 ### C# / ASP.NET - record 名称、结构体名称、类名、公有属性、方法名称、文件名使用 Pascal 式命名 - 接口 第一个字母应为大写 I - private 和 internal 属性使用小驼峰式命名(camelCase)或者开头添加 \_ - 方法参数使用小驼峰式命名(camelCase)命名 - 所有 ApiController 必须返回 ResultDto 类型,并且被 Ok() 函数包裹 - 尽可能使用公司内部 NuGet 包中的方法,减少自定义方法的实现 - 编写 Controller 中的方法,需要尽可能遵守 RESTful 风格,要有默认的 Get Post Put Delete 等方法, - Program.cs 文件避免出现业务逻辑代码 ### 实体类规范 - 字符串类型的属性一定要表上最大长度(MaxLength) ### API 规范 - 分页接口一定使用按时间或者 id 倒序排列 ## 工作目录 磁盘根目录创建 Workspace 目录,目录结构示例: - docs # 项目文档根目录 - 平安电器物联网平台 # 项目名称 - repos # 项目代码仓库根目录 - pingan-iot # 项目名称 - pingan-iot-api 后端服务项目目录,和 git 服务器上的名称一致 - pingan-iot-admin 管理后台前端项目根目录,和 git 服务器上的名称一致 - smart-venue # 另一个项目名称 - smart-venue-mp # 微信小程序端项目根目录,和 git 服务器上的名称一致 个人以及工作需要用的所有文件都放入 workspace 目录中 ## 软件安装目录 - 默认安装 D 盘,保持除去盘符以外的软件默认安装路径 - 不能安装工作使用以外的其他软件 - 所有软件安装包必须在其官方网站下载,不得安装任何来自不明的安装包