1. Coding Style

原文:https://github.com/electron/electron/blob/master/docs/development/coding-style.md
译者:Lin

这里有一些在Electron中的编码风格指导。

你可以运行npm run lint来展示任何风格 to show any style issues detected by cpplinteslint.

<h2 id="cpp-and-python">C++和Python</h2>

对于C++和Python,我们遵循Chromium的代码风格。你可以使用clang-format自动格式化C++代码。这里有一个脚本script/cpplint.py来检查是否所有的文件都遵循。

Python的版本我们现在使用的是Python 2.7。

C++代码使用了大量的Chromium的抽象类,所以建议了解一下它们。一个好的开始是Chromium的Important Abstractions and Data Structures文档。这个文档中提到一些特殊的类型,作用域类型(当在作用域范围之外时自动释放内存),以及日志记录机制等。

<h2 id="javascript">JavaScript</h2>

  • 写标准的JavaScript风格。
  • 文件名字应该是使用-连在一起的而不是使用_,例如,是file-name.js而不是file_name.js,因为在github/atom模块中名字通常是module-name构成方式。这个规则只适用于.js文件。
  • 在适当的地方使用新的ES6/ES2015语法

<h2 id="naming-things">命名方式</h2>

Electron接口使用和Node.js相同的命名方式:

  • 当模块自己就是一个类时,例如BrowserWindow,则使用CamelCase(驼峰命名法)。
  • 当模块是一个接口的集合时,例如globalShortcut,则使用mixedCase
  • 当接口是一个对象的属性,并且足够复杂到能够单独分出一章,例如win.webContents,则使用mixedCase
  • 对于其他的模块接口,使用正常的标题,例如<webview> TagProcess Object

当创建一个新的接口,最好使用getters和setters来代替jQuery的one-function风格。例如,.getText().setText(text)就比.text([text])要好。这里有一个关于这个的讨论

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容