MVC
IntroduçãoDesenvolvido em 1971 para softwares. Na época estava em desenvolvimento aplicações em smalltalk – Linguagem pai da OO.É descrito como uma arquitetura. Combina vários padrões de projeto.Foi proposto conforme o crescimento dos programas da época.É a melhor opção de arquitetura para o desenvolvimento webprincipalmente por parecer com o modelo “frontend - backend”.O projeto ficará melhor estruturado devido a granularidade proposta pelo mvc.Provê maior aproveitamento de código.Melhora a escalabilidade do projeto desenvolvido.KISS, DRY, RESTFulMaior facilidade em implementação de testes unitários.
Diagrama básicoControllerViewModel
Padrões comuns em FWComponentesBibliotecasControllerViewModelORMHelpersDBDriverFile Engine...
Padrões comuns em FW WebComponentesBibliotecasRouteEngineClientDispatcherControllerModelViewORMHelpersDB DriverFile Engine...
Routing...StaticBypassRequisiçãoDispatcherControllerMétodoView Render...
Erros ComunsQuebra de arquitetura / padrãoNÃO FAÇA ACESSO A DADOS PELA CAMADA DE CONTROLE - O acesso direto base de dados deverá sempre ser feito pelo Model, ou ainda, se houver outro framework por trás do model, deverá ser usado.Lógica de negócios em Views ou Helpers: pode Arnaldo?Redundância de códigoUse as ferramentas do framework, elas já foram (na maioria dos casos) bem testadas pela comunidade.Não faça uma coisa duas vezes. Se for o caso, crie um componente ou helper.Tente fazer componentes gerais e os extenda quando necessário.Sabe herança e polimorfismo?Código MotherfuckerNão deixe os interfaces malucos, use helpers quando há código nas views.Tente deixar os helpers e os mini códigos da view “produtor like”Não faça de seu método do controller um macarrão.Usar frenéticamente as idéias de não redundância.
O Problema da Metade do Caminho
O Caminho Feliz!
Projetos Pequenos também precisam de Frameworks e MVC!Até projeto pequeno fica ruim de dar manutenção dependendo do fédaputa que desenvolveu.Projetos pequenos costumam aceitar milhares de puxadinhos.Facilidade em configuração de otimizações para SEO devido a view ser renderizada no final do processo.Facilidade de implementar boas práticas de front end.Os RouteEngines já implementam url amigáveis.Validação serversidede formulários automática.Erros banais que podem ser evitados com as ferramentas existentes:Falhas de codificaçãoSanitizaçãoProblemas gerados por concorrência na base de dados
MVC e Frameworks MVC

MVC e Frameworks MVC

  • 1.
  • 2.
    IntroduçãoDesenvolvido em 1971para softwares. Na época estava em desenvolvimento aplicações em smalltalk – Linguagem pai da OO.É descrito como uma arquitetura. Combina vários padrões de projeto.Foi proposto conforme o crescimento dos programas da época.É a melhor opção de arquitetura para o desenvolvimento webprincipalmente por parecer com o modelo “frontend - backend”.O projeto ficará melhor estruturado devido a granularidade proposta pelo mvc.Provê maior aproveitamento de código.Melhora a escalabilidade do projeto desenvolvido.KISS, DRY, RESTFulMaior facilidade em implementação de testes unitários.
  • 3.
  • 4.
    Padrões comuns emFWComponentesBibliotecasControllerViewModelORMHelpersDBDriverFile Engine...
  • 5.
    Padrões comuns em FW WebComponentesBibliotecasRouteEngineClientDispatcherControllerModelViewORMHelpersDB DriverFile Engine...
  • 6.
  • 7.
    Erros ComunsQuebra dearquitetura / padrãoNÃO FAÇA ACESSO A DADOS PELA CAMADA DE CONTROLE - O acesso direto base de dados deverá sempre ser feito pelo Model, ou ainda, se houver outro framework por trás do model, deverá ser usado.Lógica de negócios em Views ou Helpers: pode Arnaldo?Redundância de códigoUse as ferramentas do framework, elas já foram (na maioria dos casos) bem testadas pela comunidade.Não faça uma coisa duas vezes. Se for o caso, crie um componente ou helper.Tente fazer componentes gerais e os extenda quando necessário.Sabe herança e polimorfismo?Código MotherfuckerNão deixe os interfaces malucos, use helpers quando há código nas views.Tente deixar os helpers e os mini códigos da view “produtor like”Não faça de seu método do controller um macarrão.Usar frenéticamente as idéias de não redundância.
  • 8.
    O Problema daMetade do Caminho
  • 9.
  • 10.
    Projetos Pequenos tambémprecisam de Frameworks e MVC!Até projeto pequeno fica ruim de dar manutenção dependendo do fédaputa que desenvolveu.Projetos pequenos costumam aceitar milhares de puxadinhos.Facilidade em configuração de otimizações para SEO devido a view ser renderizada no final do processo.Facilidade de implementar boas práticas de front end.Os RouteEngines já implementam url amigáveis.Validação serversidede formulários automática.Erros banais que podem ser evitados com as ferramentas existentes:Falhas de codificaçãoSanitizaçãoProblemas gerados por concorrência na base de dados