domingo, 4 de março de 2012

Entendendo o padrão de projeto MVC

MVC é o acrônimo para Model View Controller ou Modelo Visualização Controle , padrão de projeto de arquitetura voltado à orientação de objetos, que tem como objetivo separar a lógica de negócios ( Model ) da interface de usuário ( View ) e do fluxo da aplicação ( Controller ), permitindo o desenvolvimento, teste e manutenção isolada de ambos. O MVC   também permite a reutilização de uma mesma lógica de negócios através de várias interfaces sem que, para isso, seja necessário efetuar grandes alterações no código.
Para que isso seja possível, o desenvolvimento de uma aplicação é feita em camadas, cada uma com funções distintas, porém fundamentais e que interagem entre si. Para melhor entendimento vamos descrevê-las suscintamente.
Crédito da imagem: DCC FC
A camada Model é responsável por grande parte do código escrito. É nesta camada que a lógica de negócios estará presete, com o objetivo de definir e gerenciar toda a informação, bem como a notificação sobre possíveis mudanças ocorridas nos dados, como por exemplo, o estado de uma caixa de texto ou a indicação de ativação de um checkbox.
A camada View compreende a interface de usuário e é responsável pelo acesso aos dados contidos em Model e especifica como estes dados colhidos serão apresentados ao usuário, como, por exemplo, um texto dentro de uma textbox.
Por fim, a camada Controller é reponsável pelo fluxo da aplicação, ou seja, assume o mapeamento das ações efetuadas pelo usuário na camada View , por meio de eventos e, com isso, permite que a camada Model seja alterada.

Créditos da Imagem: CFGigolô
Esta arquitetura, representada em três camadas objetiva simplesmente separar a informação da apresentação, de modo que a manutenção seja funcional, pois o modelo mantém a persistência do negócio, uma vez que as funcionalidades da aplicação econtram-se encapsuladas.

Criar uma aplicação utilizando o modelo MVC implica vantagens e desvantagens entre as quais podemos citar:
VANTAGENS:
  1. Fácil gerenciamento e manutenção;
  2. Independência entre camadas;
  3. Gerenciamento de múltiplas interfaces utilizando um mesmo modelo.
DESVANTAGENS:
  1. Não recomendado para aplicações de pequeno porte;
  2. Exige tempo para análise e modelagem do sistema;
  3. Demanda profissional com conhecimento espceializado. 
    Atualmente o mercado de trabalho em TI sofre com a baixa quantidade de profissionais especializados neste padrão de projeto.

    fonte: http://www.blogomoura.com/2011/07/entendendo-o-padrao-de-projeto-mvc/


    O Projeto VitrineCaruaru segue o padrão MVC para simplificar o entendimento e também pela eficiencia. Como nosso projeto é web, sempre haverá alterações de código, com esse padrão torna-se muito simples para os integrantes da equipe. Fugindo do assunto, outra vantagem também é o reaproveitamento de código.

    Postado por: Argemiro Júnior, ADS - 6º Período.

    3 comentários: