日志记录原则 八月 6, 2022 发布在 编码规范 | 大约1703字 | 预计4分钟读完 | log 效率 日志记录原则 日志级别 Emergency Alert Critical/Fatal Error Warning Notice Infomational Debug 推荐日志等级 日志格式规范 日志中记录什么 建议记录的日志内容 不建议记录的日志内容 参考 阅读全文
编码的4种命名方法 三月 12, 2021 发布在 编码规范 | 大约557字 | 预计2分钟读完 | 驼峰命名法(camel case) 帕斯卡命名法(Pascal case) 烤串命名法(Kebab case) 蛇形命名法(Snake case) 阅读全文
前端编码规范 二月 15, 2019 发布在 编码规范 | 大约6111字 | 预计13分钟读完 | 最佳原则 命名规则 项目命名 目录命名 JS文件命名 CSS, SCSS文件命名 HTML文件命名 HTML 语法 HTML5 doctype lang属性 字符编码 IE兼容模式 引入CSS, JS 属性顺序 boolean属性 JS生成标签 减少标签数量 实用高于完美 CSS, SCSS 缩进 分号 空格 空行 换行 注释 引号 命名 属性声明顺序 颜色 媒体查询 SCSS相关 杂项 JavaScript 缩进 单行长度 分号 空格 换行 单行注释 多行注释 文档注释 引号 变量命名 变量声明 函数 数组、对象 括号 null undefined 代码检测 JSHint 杂项 阅读全文
PHP编码规范 二月 15, 2019 发布在 编码规范 | 大约9257字 | 预计19分钟读完 | 前言 第 1 章 排版规则 1.1 缩进 1.2 空格规则 1.2.1 逻辑运算符前后必须加空格 1.2.2 多个参数分隔时必须加空格 1.2.3 语法关键字后必须加空格 1.2.4 字符串和变量连接规则 1.3 换行 1.3.1 较长的语句(>80 字符) 第 2 章 命名规范 2.1 变量命名 2.1.1 局部变量 2.1.2 全局变量命名 2.1.3 静态变量命名 2.1.4 引用变量和函数返回引用 2.1.5 临时变量命名 2.1.6 方法中参数命名 2.2 命名定义/ 全局常量 2.3 类命名 2.3.1 接口命名原则 2.3.2 Exception 命名原则 2.3.3 类库命名 2.3.4 方法命名 2.3.5 方法/函数命名修饰 2.3.6 类属性命名 2.3.7 私有属性与私有方法命名 2.3.8 对象命名 2.4 缩写词不要全部使用大写字母 2.5 函数命名 第 3 章 版式规则 3.1 语义分隔 3.2 圆括号规则 3.3 方法/函数 3.4 关键字 3.4.1 if 语句 3.4.2 for 语句 3.4.3 while 语句 3.4.4 do 语句 3.4.5 switch 语句 3.4.6 try 语句 3.4.7 return 语句 第 4 章 编程规范 4.1 数组定义规则 4.2 不要采用缺省方法测试非零值 4.3 通常避免嵌入式的赋值 4.4 布尔逻辑类型 4.5 别在对象构造函数中做实际的工作 4.6 switch 格式 4.7 Continue 和 Break 4.8 ? : 4.9 其他杂项 4.9.1 类定义文件中,定义体之外不得出现诸如 echo、print 等输出语句; 4.9.2 在 HTML 网页中尽量不要穿插 PHP 代码 4.9.3 没有含义的数字 4.9.4 PHP 文件扩展名 4.9.5 总是将恒量放在等号/不等号的左边, 4.10 SQL 规则 4.10.1 输出网页的页面不出现 SQL 语句 4.10.2 进行 SQL 执行的数据必须进行有效性检测 第 5 章 注释规则 5.1 一般规则 5.2 方法/函数注释 5.3 类注释 5.4 记录所有的空语句 5.5 用 if (0)来注释外部代码块 5.6 版权信息 阅读全文
代码整洁之道-php版 二月 13, 2019 发布在 编码规范 | 大约8122字 | 预计17分钟读完 | 变量 使用有意义且可发音的变量名称 对于相同类型的变量使用相同的词汇 使用可搜索的名称(一) 使用解释性变量 避免嵌套太深或太早返回 避免猜测式变量命名 不要加不必要的上下文内容 使用默认参数代替条件式定义参数 比较 使用完全相等比较 函数 函数参数(理想情况2个或更少) 函数应该只做一件事 函数名应该告诉阅读者它在做什么 函数应该只能一个抽象级别 不建议使用布尔值标记值作为参数 避免副作用 尽量不定义全局通用函数 尽量不使用单例模式 条件表达式封装 尽量避免否定条件表达式 避免条件表达式 避免类型检查 删除无用的代码 对象与数据结构 使用对象封装 使用类受保护[protected]与私有[private]成员变量或方法 类 组合还是继承? 避免链式写法 鼓励使用final关键字 面向对象编程设计5个原则(SOLID) 单一职责原则 (SRP) 开放/封闭原则(OCP) 里氏替换原则(LSP) 接口隔离原则(ISP) 依赖倒置原则(DIP) 避免重复的代码 阅读全文