Saulo Schmidt • 28 abr 2016 • PHP
MVC no PHP – Como economizar tempo com manutenção dos aplicativos
Você precisa corrigir um bug em produção e identifica o arquivo PHP que precisa ser alterado: ele tem uma única classe, 15 mil linhas de código, sozinho conecta no banco, verifica parâmetros, processa os dados, formata em HTML e exibe no navegador.
Após algumas horas analisando o arquivo, você corrige um cálculo que continha o erro. Mas ele continua ocorrendo em outras duas partes do sistema que fazem um cálculo parecido. A manutenção que deveria demorar uma hora acaba consumindo quase dois dias inteiros.
Se isso já aconteceu com você, saiba que não está sozinho. Muitos programas são desenvolvidos de forma desorganizada, gerando duplicidade de código, falta de padronização na codificação, entre outros.
Para solucionar esse problema, foi desenvolvido o MVC.
O que é MVC?
Em resumo, o MVC (Model-View-Controller) é um padrão de desenvolvimento de software (design pattern) em que se separam os códigos em três camadas distintas com funções específicas:
Benefícios do MVC
Diminuir o custo de manutenção é o principal benefício de utilizar o modelo de arquitetura MVC no desenvolvimento dos softwares. Esse benefício é atingido por meio das diversas vantagens que o modelo proporciona:
Frameworks PHP
Atualmente, alguns frameworks em PHP utilizam a arquitetura MVC e trazem consigo vantagens e desvantagens se comparados entre si e em relação à codificação em PHP “puro”, ou seja, sem utilizar frameworks prontos.
Dentre as vantagens de se codificar em PHP puro destacam-se duas: a extrema flexibilidade na codificação e a obtenção de um melhor desempenho da aplicação, pois um código em PHP “puro” faz apenas o que precisa ser feito e um framework sempre consome um pouco mais de recursos. Mas para obter tais benefícios, é necessário que o código seja eficiente, seguro, bem estruturado quanto a sua arquitetura e bem otimizado.
Contudo, são vantagens difíceis de alcançar, principalmente para equipes com programadores que não possuem conhecimentos avançados na linguagem.
Em contrapartida, frameworks são bem estruturados, em sua maioria já contemplam algumas boas práticas de segurança e ainda trazem algumas bibliotecas que aceleram o tempo de programação e manutenção dos softwares.
Codeigniter
O CodeIgniter é um framework de produtividade em PHP que, dentre outras coisas, implementa MVC e que vem sendo bastante utilizado por muitos profissionais de PHP nos últimos anos.
Como vantagens do CodeIgniter, pode-se citar:
Na lista de desvantagens do CodeIgniter, frente a outros frameworks, contam:
Conclusão
Em resumo, a utilização do framework Codeigniter pode reduzir significativamente o tempo codificação, tanto no desenvolvimento, como na manutenção de aplicativos em PHP.
Por implementar o padrão MVC com alta flexibilidade, permitindo sua otimização de acordo com os requisitos de cada projeto, e dispor de uma vasta biblioteca de apoio que simplifica a codificação de tarefas frequente utilizadas, como persistência de dados, manuseio de URLs, entre outros; o investimento de tempo e recursos na capacitação da equipe de desenvolvimento em utilizar deste poderoso framework pode ter retorno já no primeiro projeto que a equipe implantar.