Yii - Estrutura do Aplicativo

Existe apenas uma pasta na base de código geral que está publicamente disponível para o servidor da web. É o diretório da web. Outras pastas fora do diretório raiz da web estão fora do alcance do servidor web.

Note - Todas as dependências do projeto estão localizadas no composer.jsonArquivo. O Yii2 tem alguns pacotes importantes que já estão incluídos em seu projeto pelo Composer. Esses pacotes são os seguintes -

  • Gii - A ferramenta geradora de código
  • O console de depuração
  • A estrutura de teste Codeception
  • A biblioteca SwiftMailer
  • A biblioteca de IU do Twitter Bootstrap

Os primeiros três pacotes são úteis apenas no ambiente de desenvolvimento.

A estrutura de aplicativos do Yii2 é precisa e clara. Ele contém as seguintes pastas -

  • Assets - Esta pasta inclui todos os arquivos .js e .css referenciados na página da web.

  • Commands - Esta pasta inclui os controladores que podem ser usados ​​a partir do terminal.

  • Config - Esta pasta contém config arquivos para gerenciar bancos de dados, aplicativos e parâmetros de aplicativos.

  • Mail - Esta pasta inclui o layout de correio.

  • Models - Esta pasta inclui os modelos usados ​​no aplicativo.

  • Runtime - Esta pasta é para armazenar dados de tempo de execução.

  • Tests - Esta pasta inclui todos os testes (aceitação, unidade, funcional).

  • Vendor - Esta pasta contém todos os pacotes de terceiros gerenciados pelo Composer.

  • Views- Esta pasta é para visualizações, que são exibidas pelos controladores. A pasta de layout é um modelo de página.

  • Web - O ponto de entrada da web.

Estrutura da Aplicação

A seguir está a representação esquemática da estrutura do aplicativo.

Yii2 - Objetos

A lista a seguir contém todos os objetos do Yii2 -

Modelos, visualizações e controladores

Os modelos são para representação de dados (geralmente do banco de dados). Exibir são para exibir os dados. Os controladores servem para processar solicitações e gerar respostas.

Componentes

Para criar uma funcionalidade reutilizável, o usuário pode escrever seus próprios componentes. Os componentes são apenas objetos que contêm lógica. Por exemplo, um componente pode ser um conversor de peso.

Componentes do aplicativo

São objetos instanciados apenas uma vez em toda a aplicação. A principal diferença entre componentes e componentes de aplicativo é que o último pode ter apenas uma instância em todo o aplicativo.

Widgets

Widgets são objetos reutilizáveis ​​que contêm código lógico e de renderização. Um widget pode ser, por exemplo, um controle deslizante de galeria.

Filtros

Filtros são objetos executados antes ou depois da execução das ações do Controlador.

Módulos

Você pode considerar Módulos como subapps reutilizáveis, contendo Modelos, Visualizações, Controladores e assim por diante.

Extensões

Extensões são pacotes que podem ser gerenciados pelo Composer.