# 命名 ::: details 目录 [[toc]] ::: ## 标识符 标识符的命名要清晰、明了,有明确含义。使用完整的单词或大家基本可以理解的缩写,避免使人产生误解。尽量采用采用英文单词或全部中文全拼表示。 * 标识符只能使用字母,数字与“_”。 * 首字符不能是数字; * 只有私有变量前缀使用“_”; * 全局常量的各单词间使用“_”分隔; ## 大小写 ### 命名规范 * **Pascal:**    将标识符的首字母和后面连接的每个单词的首字母都大写。 * **Camel:**    标识符的首字母小写,而每个后面连接的单词的首字母都大写。 * **Snake:**    标识符的每个单词都小写,单词间使用分隔符“_”分隔。 ### 大小写规范 | 标识符 | 大小写 | 示例 | |:-----------:|:-------:|-------| | 命名空间 | Pascal | namespace Sybotan {} | | 类 | Pascal | export class SRect {} | | 接口 | Pascal | export interface SICommandLog {} | | 函数 | Camel | isEmpty(): boolean | | 属性 | Camel | get left(): number | | 事件回调 | Camel | onMouseUp(event: SMouseEvent): boolean | | 枚举类型 | Pascal | export enum STouchState {None, Move} | | 枚举值 | Pascal | export enum STouchState {None, Move} | | 变量 | Camel | size: SSize; | | 私有变量 | Camel | private _bg: SColor; | | 参数 | Camel | translate(dx: number, dy: number): void | | 局部变量 | Camel | let x0 = 10; | | 泛型 | 大写字母 | identity\(arg: T): T {return arg;} | | 全局常量 | 大写Snake | const BG_COLOR = SColor.Blue; |