Prof. Christan Guerino Prof. Christan Guerino MVC MVC - - Definio Definio M = M = ModeI ModeI, V = , V = View View, C = , C = ControIIer ControIIer MVC uma arquitetura de informao, um MVC uma arquitetura de informao, um Design Pattern. Design Pattern. Usa 3 camadas Usa 3 camadas uma metodologia para conduzir seu uma metodologia para conduzir seu sistema sistema MVC MVC - - Vantagens Vantagens Maior reusabilidade do cdigo Maior reusabilidade do cdigo facilidade de implementao de mudanas facilidade de implementao de mudanas ou melhorias ou melhorias MVC MVC - - Desvantagens Desvantagens No recomendado para aplicaes No recomendado para aplicaes pequenas pequenas Requer tempo maior de implemetao Requer tempo maior de implemetao Requer conhecimento da equipe Requer conhecimento da equipe MVC MVC - - Diagram Diagram View View View View - - a interface do usurio, a a interface do usurio, a renderizao dos dados do Model a fim de renderizao dos dados do Model a fim de que o usurio possa interagir com o que o usurio possa interagir com o sistema, as famosas telas. sistema, as famosas telas. Controller Controller O controller processa e responde a O controller processa e responde a eventos dos usurios (GET, POST e eventos dos usurios (GET, POST e dentre outros), podendo alterar o estado dentre outros), podendo alterar o estado do Model do Model Model Model Model a camada de lgica do MVC, aqui Model a camada de lgica do MVC, aqui estaro nossas lgicas de negcio e estaro nossas lgicas de negcio e armazenamento armazenamento Est tudo contido aqui, pois por exemplo se Est tudo contido aqui, pois por exemplo se pensarmos num sistema que trabalha com base pensarmos num sistema que trabalha com base de dados (o MVC no especifica como de dados (o MVC no especifica como trabalhar) trabalhar) presumido que a lgica deste esteja presumido que a lgica deste esteja encapsulado aqui, em outras palavras aqui encapsulado aqui, em outras palavras aqui que o sistema vai acontecer que o sistema vai acontecer istria istria - - MVC MVC O MVC originalmente foi criado O MVC originalmente foi criado por por Trygve Trygve ss Reenskaug Reenskaug (http://heim.ifi.uio.no/~trygver) para (http://heim.ifi.uio.no/~trygver) para linguagem smalltalk, anos depois o linguagem smalltalk, anos depois o Martin Martin Fowler Fowler (http://martinfowler.com) comeou (http://martinfowler.com) comeou evoluir a idia do MVC para Web, evoluir a idia do MVC para Web, aplicativos GU e outros. aplicativos GU e outros.