Dojo Javascript 编程规范 规范自己的JavaScript书写

前言

良好的JavaScript书写习惯的优点不言而喻,今天彬Go向大家推荐Dojo Javascript 编程规范,相当不错的 Javascript 编程风格规范,建议大家可以借鉴一下此规范编写 Javascript。感谢i.feelinglucky的翻译。

Any violation to this guide is allowed if it enhances readability.

所有的代码都要变成可供他人容易阅读的。

快读参考

核心 API 请使用下面的风格:

结构规则注释
模块小写不要使用多重语义(Never multiple words)
骆驼
公有方法混合其他的外部调用也可以使用 lower_case(),这样的风格
公有变量混合
常量骆驼 或 大写

下面的虽然不是必要的,但建议使用:

结构规则
私有方法混合,例子:_mixedCase
私有变量混合,例子:_mixedCase
方法(method)参数混合,例子:_mixedCase, mixedCase
本地(local)变量混合,例子:_mixedCase, mixedCase


命名规范

1.变量名称 必须为 小写字母。

2.类的命名使用骆驼命名规则,例如:

Account, EventHandler

3.常量 必须 在对象(类)或者枚举变量的前部声明。枚举变量的命名必须要有实际的意义,并且其成员 必须 使用骆驼命名规则或使用大写:

var NodeTypes = {

Element : 1,

DOCUMENT: 2

}

4.简写单词 不能使用 大写名称作为变量名:

getInnerHtml(), getXml(), XmlDocument

5.方法的命令 必须 为动词或者是动词短语:

obj.getSomeValue()

6.公有类的命名 必须 使用混合名称(mixedCase)命名。

7.CSS 变量的命名 必须 使用其对应的相同的公共类变量。

8.私有类的变量属性成员 必须 使用混合名称(mixedCase)命名,并前面下下划线(_)。例如:

var MyClass = function(){

var _buffer;

this.doSomething = function(){

};

}

9.变量如果设置为私有,则前面 必须 添加下划线。

this._somePrivateVariable = statement;

10.通用的变量 必须 使用与其名字一致的类型名称:

setTopic(topic) // 变量 topic 为 Topic 类型的变量

11.所有的变量名 必须 使用英文名称。

12.变量如有较广的作用域(large scope),必须使用全局变量;此时可以设计成一个类的成员。相对的如作用域较小或为私有变量则使用简洁的单词命名。

13.如果变量有其隐含的返回值,则避免使用其相似的方法:

getHandler(); // 避免使用 getEventHandler()

14.公有变量必须清楚的表达其自身的属性,避免字义含糊不清,例如:

MouseEventHandler

,而非 MseEvtHdlr。

  请再次注意这条规定,这样做得的好处是非常明显的。它能明确的表达表达式所定义的含义。例如:   

dojo.events.mouse.Handler // 而非 dojo.events.mouse.MouseEventHandler

15.类/构造函数 可以使用 扩展其基类的名称命名,这样可以正确、迅速的找到其基类的名称:

 EventHandler

 UIEventHandler

 MouseEventHandler

  基类可以在明确描述其属性的前提下,缩减其命名:

   MouseEventHandler as opposed to MouseUIEventHandler.

特殊命名规范

术语 “get/set” 不要和一个字段相连,除非它被定义为私有变量。

前面加 “is” 的变量名 应该 为布尔值,同理可以为 “has”, “can” 或者 “should”。

术语 “compute” 作为变量名应为已经计算完成的变量。

术语 “find” 作为变量名应为已经查找完成的变量。

术语 “initialize” 或者 “init” 作为变量名应为已经实例化(初始化)完成的类或者其他类型的变量。

UI (用户界面)控制变量应在名称后加控制类型,例如: leftComboBox, TopScrollPane。

复数必须有其公共的名称约定(原文:Plural form MUST be used to name collections)。

带有 “num” 或者 “count” 开头的变量名约定为数字(对象)。

重复变量建议使用 “i”, “j”, “k” (依次类推)等名称的变量。

补充用语必须使用补充词,例如: get/set, add/remove, create/destroy, start/stop, insert/delete, begin/end, etc.

能缩写的名称尽量使用缩写。

避免产生歧义的布尔变量名称,例如:

  isNotError, isNotFound 为非法

错误类建议在变量名称后加上 “Exception” 或者 “Error”。

方法如果返回一个类,则应该在名称上说明返回什么;如果是一个过程,则应该说明做了什么。

文件

缩进请使用 4 个空白符的制表位。

如果您的编辑器支持 文件标签_(file tags),请加添如下的一行使我们的代码更容易阅读:

// vim:ts=4:noet:tw=0:

译注:老外用 VIM 编辑器比较多,此条可以选择遵循。

代码折叠必须看起来是完成并且是合乎逻辑的:

var someExpression = Expression1

+ Expression2

+ Expression3;

var o = someObject.get(

Expression1,

Expression2,

Expression3

);

以上是 Dojo Javascript 编程规范 规范自己的JavaScript书写 的全部内容, 来源链接: utcz.com/z/347022.html

回到顶部