StyleGuide

  • 注意中英文单词间隔:V8 团队致力于提高 ES2015 特性性能

  • 注意中英文标点符号使用

    本项目暂约定以下代码风格(不断逐条添加中):

  • 关于空格

    • 所有代码使用4个空格缩进

    • 运算符后使用一个空格

    • "," 和for循环语句中的";" 后面跟上一个空格

    • 条件、分支保留字,如 if for while else switch 后留出一个空格

    • "[]", "."和"->" 前后不留空格

  • 用空行把大块代码分成逻辑上的“段落

  • 关于括号

    • 大括号另起一行

    • 即便只有一行代码也加大括号

  • C 指针中的指针符靠近类型名,如写成int p,而不写成int p

  • 关于标点

    • 中文表述,使用中文全角的标点符号,如:()、。,?

    • 数学公式(包括文中混排的公式)和英文代码,使用英文半角的标点符号,如:(),.?…

  • 关于注释

    • 注释统一用中文

    • 尽量统一用"//",一般不用"/.../"

  • 关于命名

    • 类名为大写字母开头的单词组合

    • 函数名比较长,由多个单词组成的,每个单词的首字母大写,如int MaxSubArray();函数名很短,由一个单词组成,首字母小写,比如int swap()

    • 变量名比较长,由多个单词组成的,首个单词的首字母小写,后面紧跟单词的首字母大写,如maxEnd;变量名很短,由一个单词组成,首字母小写,如left

    • 变量尽量使用全名,能够描述所要实现的功能,如 highestTemprature;对于已经公认了的写法才使用缩写,如 tmp mid prev next

    • 变量名能“望文生义”,如v1, v2不如area, height

    • 常量的命名都是大写字母的单词,之间用下划线隔开,比如MY_CONSTANT

    • il < 4384 和 inputLength < MAX_INPUT_LENGTH,后一种写法更好

  • 一个函数只专注做一件事

  • 时间复杂度小写表示,如O(nlogn),而不写成O(N*logN)

  • 正文中绝大部分采用C实现,少量C++代码,即以C为主,但不去刻意排斥回避C++;

  • 关于的地得

    • 形容词(代词) + 的 + 名词,例如:我的小苹果

    • 副词 + 地 + 动词,例如:慢慢地走

    • 动词 + 得 + 副词,例如:走得很快

  • 关于参考文献

    • 格式:主要责任者.书名〔文献类型标识 ] .其他责任者.版本.出版地:出版者,出版年.文献数量.丛编项.附注项.文献标准编号。例子:1 刘少奇.论共产党员的修养.修订 2 版.北京:人民出版社,1962.76 页.

  • 专业术语

    • 统一一律用“树结点”,而不是“树节点”。

    • 用左子树、右子树表示树的左右子树没问题,但是否用左孩子、右孩子表示树或子树的左右结点?