Arquitetura do Sistema

Arquitetura do Sistema

Introdução

Este documento descreve a arquitetura, a configuração e o funcionamento do projeto com backend em PHP/Yii2 e frontend Angular/TypeScript. O objetivo é guiar desenvolvedores na compreensão e manutenção do projeto.

Arquitetura do Sistema

Backend - PHP

  • Framework: Yii2/PHP >7.4.
  • Funções principais:
    • Gerenciamento de APIs REST para comunicação com o frontend.
    • Conexão com banco de dados PostgreSQL.
    • Implementação de regras de negócio e validação de dados.

Frontend - Angular

  • Framework: Angular/TypeScript
  • Funções principais:
    • Renderização dinâmica de componentes.
    • Consumo de APIs fornecidas pelo backend.
    • Gerenciamento de estado ContextApi.

Configuração do Ambiente de Desenvolvimento

Requisitos

  • Backend:
    • Versão do PHP: 7.4.x
    • Composer.
    • Servidor web: Apache.
    • Banco de dados: PostgreSQL.
  • Frontend:
    • Node.js 16 ou superior.

Instalação

Backend

  1. Clone o repositório:
                                            
                                                git clone git@github.com:uiteec/studio.git
                                                cd studio
                                            
                                        
  2. Instale as dependências:
                                            
                                                cd backend
                                                composer install
                                            
                                        
  3. Configure o arquivo backend\config\ambiente\development.php com as credenciais do banco de dados.
  4. Inicie o servidor:
    php -S localhost:8300

Frontend

  1. Instale as dependências:
                                            
                                                cd frontend
                                                yarn install
                                            
                                        
  2. Inicie o servidor de desenvolvimento:
    ng s

Fluxo de Dados

  1. O frontend faz requisições HTTP para as APIs do backend.
  2. O backend processa as requisições, acessa o banco de dados e retorna a resposta.
  3. O frontend consome as respostas e atualiza a interface do usuário dinamicamente.

Boas Práticas

Backend

  • Utilize padrões de projeto como MVC.
  • Valide todas as entradas de dados.

Frontend

  • Organize os componentes e serviços de maneira modular.
  • Utilize interceptors para gerenciar requisições HTTP.
  • Implemente tratamento de erros e mensagens para o usuário.

Conclusão

Este documento fornece as bases para o entendimento e manutenção do projeto PHP com Angular. Para mais detalhes, consulte as documentações oficiais das tecnologias utilizadas.