O que é Badiu.Net
Badiu.Net é uma plataforma de desenvolvimento baseado em Symfony. Foi implementado na versão 2.5 do Symfony. A atualização para a versão mais recente do Symfony está em curso. A versão mais recente da plataforma Badiu.Net é 1.2 e roda como PHP 7.1 a 7.4 e banco de dados MySQL / PostgreSQL.
A programação na plataforma Badiu.Net é uma combinação de configuração de arquivo em formato yml e programação PHP como serviço. Usa arquitetura MVC do Symfony com rotas padronizadas. Tem uma estrutura própria de formulários baseada na configuração do arquivo yml. Todas as funcionalidades e telas criadas no sistema são identificadas por uma chave string única.
O sistema de permissão é baseado na chave de identificação de cada funcionalidade. Essa chave também é usada para definir serviço e todas as configurações do sistema como formulário, filtro e relatórios.
Badiu.Net é organizado em módulos. Cada módulo é um bundle Symfony. Cada módulo tem uma chave única de identificação. Um módulo pode herdar a configuração de um outro módulo seguindo a lógica de programação orientada a objeto.
As configurações de chaves em arquivo yml é a base do desenvolvimento Badu.Net. Essas chaves são armazenadas no banco de dados. Ao iniciar o sistema, são carregadas para a sessão de cada usuário.
No banco de dados, as chaves são organizadas em três camadas: sistema, entidade e usuário. A camada do sistema acomoda as configurações originais do sistema. São configurações importadas dos arquivos yml. Isso ocorre na instalação ou atualização. A camada da entidade e do usuário recebem as chaves manualmente pelo formulário de cadastro.
Quando a sessão é iniciada, a leitura das chaves é feita nas três camadas na seguinte ordem: sistema, entidade e usuário. Ao ler a segunda camada ou terceira, se a chave já exista, o valor da chave é substituído. Assim a chave definida na camada mais acima substitui a da camada anterior. No sistema ainda a camada do usuário não está implementada. A sobreposição das chaves permite customizar os sistemas após a instalação.
A plataforma Badiu.Net foi projetada para oferecer agilidade no desenvolvimento em sistemas de grande porte. Permite separar o trabalho da equipe com grande eficiência. Equipes que atuam em frontend e backend podem atuar no projeto simultaneamente gerando grande produtividade.
A plataforma Badiu.Net teve seu início de desenvolvimento em 2012 pela equipe da empresa Badiu. Foi usado para gerar projetos que estão em uso no mercado. Projetos como:
- Badiu MReport - Plataforma de serviço de relatórios do Moodle
- Badiu Financ - Sistema de gestão financeira
- Badiu E-commerce - Sistema de venda online
Além desses projetos, dois novos projetos estão sendo desenvolvido
- Badiu SGA - Sistema de gestão acadêmica
- Badiu GC2 - Sistema de gestão corporativo de cursos
O uso de Badiu.Net permitiu alta produtividade com equipe enxuta na empresa Badiu.