Estilo de código
Estas son las pautas de estilo para la codificación en Electron.
Para mostrar los problemas de estilo detectados por cpplint
y eslint
, puede ejecutar npm run lint
.
Código general
- Termine los archivos con una nueva linea vacía.
- Coloque los requires en el siguiente orden:
- Módulos incorporados en Node (tal como
path
) - Módulos incorporados en Electron (tal como
ipc
,app
) - Módulos locales (usando rutas relativas)
- Módulos incorporados en Node (tal como
- Coloque las propiedades de la case en el siguiente orden:
- Métodos y propiedades de la clase (métodos que empiezan con un
@
) - Instancia métodos y propiedades
- Métodos y propiedades de la clase (métodos que empiezan con un
- Evitar código dependiente de la plataforma:
- Use
path.join()
para concatenar nombres de archivos. - Use
os.tmpdir()
en lugar de/tmp
cuando necesite referencias el directorio temporal.
- Use
- Usar un
return
simple cuando se devuelve explícitamente al final de una función.- No
return null
,return undefined
,null
oundefined
- No
C++ y Python
For C++ and Python, we follow Chromium's Coding Style. There is also a script script/cpplint.py
to check whether all files conform.
La versión de Python que estamos utilizando actualmente es Python 3.9.
El código de C ++ utiliza una gran cantidad de abstracciones y tipos de Chromium, por lo que se recomienda familiarizarse con ellos. Un buen lugar para empezar es el documento de Chromium Important Abstractions and Data Structures. El documento menciona algunos tipos especiales, tipos de ámbito (que liberan automáticamente su memoria cuando salen del ámbito), mecanismos de registro etc.
Documentación
- Escribe remark estilo markdown.
Puede ejecutar npm run lint:docs
para asegurarse de que los cambios en su documentación tengan el formato correcto.
JavaScript
- Escribe el estilo JavaScript estándar.
- File names should be concatenated with
-
instead of_
, e.g.file-name.js
rather thanfile_name.js
, because in atom/atom module names are usually in themodule-name
form. Esta regla solo aplica a archivos.js
. - Use la sintaxis ES6 / ES2015 más nueva cuando corresponda
const
Para solicitudes y otras constantes. Si el valor es un primitivo, use nombre en mayúsculas (por ejemplo,const NUMBER_OF_RETRIES = 5
).let
para definir variables- Arrow functions en lugar de
function () { }
- Template literals en lugar de el uso de cadenas concatenadas
+
Nombrar cosas
Las API de Electron utilizan el esquema de capitalización usado en Node.js:
- Cuando el módulo en sí es una clase similar a
BrowserWindow
, usePascalCase
. - Cuando el módulo es un conjunto de APIs, similar a
globalShortcut
, usecamelCase
. - Cuando la API es una propiedad de objeto, y es lo suficientemente compleja para estar en un capítulo separado como
win.webContents
, utilicemixedCase
. - Para otras APIs que no sean módulos, utilice títulos naturales, similar a
<webview> Tag
oProcess Object
.
Cuando se crea una nueva API, se prefiere utilizar captadores y establecedores en lugar del estilo one-function de JQuery. Por ejemplo, se prefiere .getText()
y .setText(text)
, en lugar de .text([text])
. Hay una discussion sobre esto.