📄️ Estrutura do Projeto
Compreender a estrutura de projeto padrão no Vaden é fundamental para manter aplicações limpas e escaláveis. Abaixo está uma visão geral de como um projeto típico do Vaden é organizado.
📄️ Controlador
Um @Controller() no Vaden define uma classe que lida com rotas HTTP. É um dos blocos de construção fundamentais do framework.
📄️ Componentes
O Vaden fornece um sistema de injeção de dependência (DI) poderoso e intuitivo inspirado em frameworks como Spring Boot. Ele utiliza anotações para registrar e injetar dependências em toda a aplicação de forma modular e escalável.
📄️ Middleware
O Vaden oferece um sistema de middleware poderoso construído sobre o pipeline do Shelf. Ele permite transformações de requisição/resposta, autenticação, registro de logs, manipulação de cabeçalhos e muito mais — globalmente ou por rota.
📄️ Objeto de Transferência de Dados (DTO)
Vaden utiliza o conceito de DTOs (Objetos de Transferência de Dados) para transportar dados com segurança entre cliente e servidor. Os DTOs são integrados ao sistema de serialização chamado DSON, que lida com a conversão de objetos para e de JSON.
📄️ Tratamento de Exceções
O Vaden inclui um poderoso mecanismo de tratamento de exceções inspirado no @ControllerAdvice do Spring Boot. Ele permite definir lógica de tratamento de erros global de forma centralizada e reutilizável.