-
Notifications
You must be signed in to change notification settings - Fork 0
Visão Geral
O Galastri Framework tem como premissa a organização estruturada dos arquivos que compoem o site/app de forma que simule a organização de pastas, em que todos os arquivos ficam estruturados em pastas e subpastas seguindo um esquema similar ao das URLs de um servidor web. Isso é definido pela arquitetura que o framework se utiliza.
Utiliza-se uma variante da arquitetura MVC chamada Thin Model MVC, em que apenas Controllers e Views possuem estruturas e funcionalidades específicas e inerentes ao framework.
Ao menos até o momento, Models não possuem especificidades, podendo ser aplicadas pelo próprio Controller ou implementadas à vontade do usuário.
-
-
Controllers são arquivos contendo uma classe, cujo nome e funcionalidade devem seguir o conceito de nós de rota.
-
Os métodos das classes Controller devem serguir o conceito de endpoints de rota.
-
Views são os tipos de saída de dados que o framework responde à requisição do servidor, resultado do processamento da requisição pela Controller. Esta saída pode ser um HTML, uma saída JSON ou um arquivo qualquer.
-
Utiliza-se de uma variação da programação OOP chamada de programação orientada a classes (Class-Oriented Programming), em que os códigos devem estar sempre encapsulados em classes, mas sem a obrigatoriedades de se seguir os princípios da OOP, como polimorfismo ou herança, por exemplo. Ou seja, não há restrição quanto ao uso de classes estáticas, por exemplo.
-
No desenvolvimento do framework
-
O código deve estar em uma classe.
-
A classe pode ser estática ou instanciável.
-
Não utilizar herança. Preferir o uso de composição para criar um objeto da classe.
No uso do framework
-
O código deve estar em uma classe Controller.
-
O processamento dos dados deve ocorrer no método que representa um endpoint do Controller.
-
Ao criar códigos externos para serem importados, não colocar em pastas como app/Controller. Crie novas pastas para organizar seus arquivos adicionais.
-
Cada arquivo deve conter apenas uma classe.
-
Importar usando
use
seguido donamespace
e daclasse
. Minimizar ao máximo a importação usandorequire
ouinclude
.
-
• Visão Geral
• Estrutura de pastas
• Inicialização
• Bootstrap
• Visão Geral
• Lista de configurações
• Contexto route
• Contexto node
• Contexto endpoint
• Núcleo
• ErrorHandler
• Config
• Definition
─ Definição de configuração
• Router
• Galastri
• Outros
• Message