Clique aqui para ler essa revista em PDF.
PHP – Expert – Boas Práticas
Programando em PHP usando MVC
Aprenda técnicas de Orientação a Objetos juntamente com o conceito MVC para criar aplicações em PHP
O que é MVC?
Muita gente já ouviu falar alguma vez sobre esta metodologia de desenvolvimento. Mas afinal, o que vem a ser uma aplicação desenvolvida em MVC? Neste artigo, irei explicar de uma forma sucinta sobre este tipo de arquitetura de desenvolvimento e como este método pode ser aplicado utilizando a linguagem PHP.
MVC vem da sigla (Model-View-Controller) e é um padrão de arquitetura de software. Em aplicações complexas, que enviam uma série de dados para o usuário, o desenvolvedor frequentemente necessita separar os dados (“Model”) da interface (“View”). Desta forma, alterações feitas na interface não afetarão a manipulação dos dados, e estes poderão ser reorganizados sem alterar a interface do usuário. O model-view-controller resolve este problema através da separação das tarefas de acesso aos dados e lógica do negócio da apresentação e interação com o usuário, introduzindo um componente entre os dois: o Controller. MVC é usado em padrões de projeto de software, mas MVC abrange mais da arquitetura de uma aplicação do que é típico para um padrão de projeto.
A Figura 1 representa um diagrama simples exemplificando a relação entre Model, View e Controller onde linhas sólidas indicam associação direta e as tracejadas indicam associação indireta. É comum dividir a aplicação em camadas separadas: apresentação (“interface”), domínio e acesso a dados. Em MVC a camada de apresentação também é separada da view e da controller.
Figura 1. Representação gráfica do conceito MVC
MVC é muito visto também em aplicações para Web, onde a View é geralmente a página HTML, e o código que gera os dados dinâmicos para dentro do HTML é o Controller. E, por fim, o Model é representado pelo conteúdo de fato, geralmente armazenado em bancos de dados ou arquivos XML.
Usando Objetos para entender o conceito aplicado de MVC
Muita gente me pergunta sobre a maneira que eu programo usando MVC com PHP. É claro que já existem vários frameworks que utilizam essa técnica no desenvolvimento PHP. Porém resolvi apresentar aqui o conceito do que uso que pode servir de material de auxílio para outros programadores também.
Para se ter uma idéia, vamos partir para o modelo de programação orientada a objetos. A maneira mais prática de se programar usando MVC nada mais é do que programar usando orientação a objetos. Vamos pensar então no conceito de objeto. Um exemplo, um veículo, onde teremos a classe de veículo e seus métodos (Listagem 1).
Listagem 1. Exemplo de classe em PHP
class Veiculo{
/* Qualquer veículo tem os seus métodos padrões: */" [...] continue lendo...