Porque usar mvc
Olá pessoal,
Hoje irei falar de MVC. Significa Model View Controller. A grosso modo podemos dizer que é um padrão de arquitetura de software que tem como objetivo separar as “coisas”.
Você já ouviu falar no código spaghetti? Bom, spaghetti é um termo utilizado pelos geeks da área para classificar uma aplicação ou web site que possui seu código fonte mal organizado.
A questão de ser mal organizado está no fato de que na maioria dos casos existe código em um local onde ele não deveria estar. Na criação de sites por exemplo não é muito interessante misturarmos no código fonte final, trechos que abordam do visual, marcação e comportamento. Neste caso o HTML seria a marcação. O visual seria por conta do CSS, e o comportamento seria a responsabilidade do JavaScript.
Poderia citar N vantagens de se criar sites seguindo este modelo. Algumas importantes são: redução de código, facilidade de manutenção, maior acessibilidade.
Bom isso ainda não tem haver com o MVC do desenvolvimento de Softwares. Foi apenas uma associação simples que fiz para entender que o MVC propõe a separação de tarefas dentro de uma aplicação. Dizemos que o MVC é composto de camadas, e cada uma delas tem sua responsabilidades.
O foco deste post não é ensinar MVC, mas sim fortalecer a importância de sua utilização no dia a dia.
Para aqueles que iniciam na programação, quando ouvem falar se assustam. Acham realmente uma burocracia e perca de tempo quando se trata de criar sites dinâmicos ou até mesmo pequenas aplicações web.
As vantagem que eu vejo na utilização deste padrão são parecidas com as que citei no exemplo de um web site estático feito nos padrões web. Sou da opinião de que é bom evitar utilizar “bazuca para matar moscas”, mas cada vez mais percebo que a organização de uma aplicação é a base de tudo, já que a manutenção está presente na maior parte do ciclo de vida de um software.
Levando em conta que em grande parte dos projetos, mais de um membro da equipe participa diretamente escrevendo códigos, realizando testes e trabalhando na evolução do software, torna-se totalmente inviável ter funções ou métodos repetidos ou espalhados de forma incorreta por toda a aplicação.
Abraços a todos!



