electron/docs-translations/pt-BR/development/source-code-directory-structure.md

54 lines
3.5 KiB
Markdown
Raw Normal View History

2016-02-02 19:01:55 +00:00
# Estrutura de Diretórios do Código-Fonte
2017-07-14 00:23:23 +00:00
O código-fonte do Electron é separado em algumas partes, seguindo principalmente as convenções de separação do chromium.
2016-02-02 19:01:55 +00:00
Você pode se familiarizar com a [arquitetura de multiprocessamento ](http://dev.chromium.org/developers/design-documents/multi-process-architecture) do Chromium para entender melhor o código-fonte.
## Estrutura do Código-Fonte
```
Electron
├──atom - Código fonte do Electron.
| ├── app - Código de inicialização.
2017-07-14 00:23:23 +00:00
| ├── browser - A interface incluindo a janela principal, UI, e todas as coisas do processo principal. Ele se comunica com o renderizador para gerenciar as páginas web.
2016-02-02 19:01:55 +00:00
| |   ├── lib - Código Javascript para inicializar o processo principal.
| | ├── ui - Implementação da UI para plataformas distintas.
| | | ├── cocoa - Código-fonte específico do cocoa .
| | | ├── gtk - Código-font específico do GTK+.
| | | └── win - Código-fonte específico do Windows GUI.
2017-07-14 00:23:23 +00:00
| | ├── default_app - A página padrão é mostrada quando
2016-02-02 19:01:55 +00:00
| | | Electron inicializa sem fornecer um app.
| | ├── api - Implementação do processo principal das APIs
| | | └── lib - Código Javascript, parte da implementação da API.
| | ├── net - Código relacionado a rede.
| | ├── mac - Código fonte em Object-c, específico para Mac.
| | └── resources - Icones, arquivos dependentes da plataforma, etc.
| ├── renderer - Código que é executado no processo de renderização.
| | ├── lib - Parte do código Javascript de inicialização do renderizador.
2017-07-14 00:23:23 +00:00
| | └── api - Implementação das APIs para o processo de renderização.
2016-02-02 19:01:55 +00:00
| | └── lib - Código Javascript, parte da implementação da API.
2017-07-14 00:23:23 +00:00
| └── common - Código que utiliza ambos os processos, o principal e o de renderização,
2016-02-02 19:01:55 +00:00
| ele inclui algumas funções utilitárias e códigos para integrar com ciclo de mensagens do node no ciclo de mensagens do Chromium.
| ├── lib - Código Javascript comum para a inicialização.
| └── api - A implementação de APIs comuns e fundamentação dos
| módulos integrados com Electron's.
| └── lib - Código Javascript, parte da implementação da API.
├── chromium_src - Código-fonte copiado do Chromium.
├── docs - Documentação.
├── spec - Testes Automáticos.
├── atom.gyp - Regras de compilação do Electron.
└── common.gypi - Configuração específica do compilador e regras de construção para outros componentes
como `node` e `breakpad`.
```
## Estrutura de Outros Diretórios.
* **script** - Scripts utilizado para fins de desenvolvimento como building, packaging, testes, etc.
* **tools** - Scripts auxiliares, utilizados pelos arquivos gyp, ao contrário do`script`, os scripts colocados aqui nunca devem ser invocados diretamente pelos usuários.
* **vendor** - Dependências de código-fonte de terceiros, nós não utilizamos `third_party` como nome porque ele poderia ser confundido com o diretório homônimo existente no código-fonte do Chromium.
* **node_modules** - Módulos de terceiros em node usados para compilação
* **out** - Diretório temporário saída do `ninja`.
* **dist** - Diretório temporário do `script/create-dist.py` ao criar uma distribuição
* **external_binaries** - Binários baixados de Frameworks de terceiros que não suportam a compilação com `gyp`.