A estrutura da estrutura de Fructum é bastante simples.
O FramWork usa o modelo de design HMVC (controlador hierárquico modelo-video).
A parte mais altamente nivelada da estrutura é o ponto de entrada - o arquivo que provoca o lançamento do aplicativo. Na prática, pode ser um script index.php para um servidor da Web ou um arquivo executável do sistema operacional. No ponto de entrada, o aplicativo é sempre iniciado.
As aplicações são conceitos condicionais. São classes que controlam a entrada e saída dos dados. A separação em aplicativos permite que você faça do seu projeto universal - ele poderá iniciar ambos em baixo do console e através do navegador, enquanto que, para cada caso, você pode escrever manipuladores separados, mas com tudo isso usam as mesmas bibliotecas.
Exemplos de aplicativos:
Quando o ponto de entrada liga a transportadora (inclua requer), torna -se possível iniciar o aplicativo.
O carga está procurando o aplicativo certo e as instruções relevantes são executadas. No caso de um aplicativo da Web, é lançado um roteador, que determina o caminho desejado, se o aplicativo for console, um único processador de aplicativos de console será lançado.
Todas as classes do projeto (com exceção do nível mais baixo de frutum) estão contidas em extensões, módulos, ganchos e scripts da estrutura (a seguir classes do sistema).
Quando você precisa carregar qualquer classe, antes de tudo, o carga verifica o diretório com ganchos. Khuki são criados para reescrever os scripts do núcleo e extensões. Huki também pode ser usado para escrever o próprio aplicativo.
Em segundo lugar, o catálogo do sistema com classes do sistema é verificado. Essas classes são parentes para o FRUCTUM e seu diretório não é recomendado para tocar em seu diretório para evitar problemas com compatibilidade e atualizar a estrutura. Se você deseja alterar as classes do sistema, use ganchos - crie uma classe de classe com o mesmo nome e ele não atingirá scripts do sistema.
Por fim, as extensões são verificadas. Essas são as adições da estrutura que todos podem escrever e publicar. Eles também podem ser usados para escrever um aplicativo em si.
A expansão pode ter seus próprios módulos ("expansão de extensões"). Os módulos são criados caso a expansão seja grande (por exemplo, CMS) e forneça modificação. Para determinar o módulo pertencente à expansão, é suficiente simplesmente adicionar o prefixo com o nome da expansão ao nome do módulo (por exemplo, test_moodule será um módulo para expandir o teste). Se você adicionar o módulo a uma expansão não existente, ele não será carregado.
O aplicativo na estrutura do FRUCTUM é um sistema de baixo nível que determina os manipuladores de dados e controla a saída da resposta. Em outras palavras, este é um sistema que aceita dados, transfere -os para o processador e o exibe.
A separação em aplicações é necessária nos casos em que os dados fornecidos e aceitos podem ser diferentes. Se você escrever um aplicativo de console, será simples - simplesmente recebendo e fornecendo dados. No entanto, os aplicativos da Web, além de dados comuns, relata cookies e manchetes.
O conjunto padrão do FRUCTUM contém dois tipos de aplicativos - console e aplicativos da Web.
Os aplicativos Combus são os aplicativos lançados através da linha de comando ou SSH e os únicos dados de entrada do KP são argumentos. Os aplicativos da Web são os aplicativos lançados através do navegador e aceitam os dados, post post, cookies, manchetes etc. Os dados fornecidos também são variados.
Para lançar seu projeto, você precisa executar duas etapas: 1. Conecte a estrutura 2. Execute o aplicativo
A montagem padrão é ajustada para ser conveniente ao criar aplicativos da Web. As duas etapas acima mencionadas do lançamento são realizadas nos pontos de entrada tão chamados. No caso de um aplicativo da web, a entrada é index.php. Esse script assume todas as solicitações HTTP, conecta a estrutura e inicia aplicativos da Web.
Se você deseja escrever seu tipo de aplicativo, recomendamos que você faça um script de um aplicativo de console como base. Além disso, se desejar, você pode refazer os aplicativos padrão - reescrever um roteador de aplicativos da web ou escrevê -lo para console. Isso não requer conhecimento adicional, basta estudar como as aplicações padrão funcionam e escreva expansão ou gancho.
Os aplicativos de console são os mais simples - um roteador e controladores não são usados aqui, como nos aplicativos da Web. O aplicativo Standard ConsoleApp após a partida está procurando um método de classe Handler console e chama o método run () nele. Se não houver essa classe, ocorrerá um erro crítico
Classe fructum config contém a configuração necessária da estrutura. Para alterá -lo, você deve criar seu próprio gancho copiando /system/fructum/config.php in /hooks/fructum/config.php e altere o conteúdo do que você precisa. Cada parâmetro está documentado
Se sua extensão exigir ajuste, não crie sua classe - basta entrar em contato com as constantes da classe fructum config. Adicione informações sobre quais dados devem ser adicionados à configuração nas instruções para a instalação da expansão.
Prestar atenção! Os dados na configuração são constantes, não variáveis. Use controle de custo.
Todas as informações detalhadas estão disponíveis para Vicki: http://wiki.blockstudio.net/wiki/fructum