From 7ee8c7f677f47eb34dc47fd77d1e99b63ade3fb6 Mon Sep 17 00:00:00 2001 From: Davidson Alencar Date: Tue, 20 Jan 2015 18:01:54 -0200 Subject: [PATCH] docs/guide-pt-BR/runtime-bootstrapping.md - translate [ci skip] --- docs/guide-pt-BR/runtime-bootstrapping.md | 55 +++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 docs/guide-pt-BR/runtime-bootstrapping.md diff --git a/docs/guide-pt-BR/runtime-bootstrapping.md b/docs/guide-pt-BR/runtime-bootstrapping.md new file mode 100644 index 0000000000..e831d874ee --- /dev/null +++ b/docs/guide-pt-BR/runtime-bootstrapping.md @@ -0,0 +1,55 @@ +Inicialização (Bootstrapping) +============================= + +A inicialização refere-se ao processo de preparação do ambiente antes que uma +aplicação comece a resolver e processar um pedido de requisição. A inicialização +é feita em duas etapas: +O [script de entrada](structure-entry-scripts.md) e a +[aplicação](structure-applications.md). + +No [script de entrada](structure-entry-scripts.md), a classe de autoloaders de +diferentes bibliotecas são registradas. Inclui o autoloader do Composer através +do seu arquivo `autoload.php` e o autoloader do Yii através do seu arquivo `Yii`. +O script de entrada, em seguida, carrega a [configuração](concept-configurations.md) +da aplicação e cria uma instância da [aplicação](structure-applications.md). + +No construtor da aplicação, as seguintes etapas de inicialização serão realizadas: + +1. O método [[yii\base\Application::preInit()|preInit()]] é chamado, na qual + algumas propriedades da aplicação de alta prioridade serão configuradas, como + o [[yii\base\Application::basePath|basePath]]. +2. Registra o [[yii\base\Application::errorHandler|manipulador de erro]]. +3. Inicializa as propriedades da aplicação a partir da configuração da aplicação. +4. O método [[yii\base\Application::init()|init()]] é chamado, que por sua vez + chamará o método [[yii\base\Application::bootstrap()|bootstrap()]] para executar + os componentes de inicialização. + - Inclui o arquivo `vendor/yiisoft/extensions.php` de manifesto da extensão. + - Cria e executa os [componentes de inicialização](structure-extensions.md#bootstrapping-classes) + declaradas pelas extensões. + - Cria e executa os [componentes da aplicação](structure-application-components.md) + e/ou os [módulos](structure-modules.md) declarados na + [propriedade bootstrap](structure-applications.md#bootstrap) da aplicação. + +Como as etapas de inicialização tem que ser feitos antes da manipulação de *cada* +requisição, é muito importante que mantenha este processo limpo e otimizado o +máximo possível. + +Tente não registrar muitos componentes de inicialização. Um componente de +inicialização é necessário apenas se quiser participar de todo o ciclo de vida +do processo da requisição. Por exemplo, se um módulo precisar registrar uma +análise de regras de URL adicionais, deve ser listados na +[propriedade bootstrap](structure-applications.md#bootstrap) de modo que as novas +regras de URL possam ter efeito antes que sejam usados para resolver as requisições. + +No modo de produção, habilite um cache de bytecode, como o [PHP OPcache] ou [APC], +para minimizar o tempo necessário para a inclusão e análise os arquivos PHP. + +[PHP OPcache]: http://php.net/manual/en/intro.opcache.php +[APC]: http://php.net/manual/en/book.apc.php + +Algumas aplicações de larga escala possuem [configurações](concept-configurations.md) +complexas, que são divididos em vários arquivos menores. Se este for o caso, +considere guardar o cache de todo o array da configuração e carregue-o +diretamente a partir deste cache antes da criação da instância da aplicação no +script de entrada. +