A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Projeto com reuso – MVC – Model-View-Controller

Apresentações semelhantes


Apresentação em tema: "Projeto com reuso – MVC – Model-View-Controller"— Transcrição da apresentação:

1 Projeto com reuso – MVC – Model-View-Controller
Maria Alice G. V. Ferreira 2012 “O milagre mais comum da Engenharia de Software é a transição da Análise para o Projeto e do Projeto para o Código”. Richard Due apud Pressman (2006)

2 Maria Alice G. Varella Ferreira, 2012
MVC - contexto Usada em aplicações interativas com uma interface Humano-Computador flexível. Maria Alice G. Varella Ferreira, 2012

3 Maria Alice G. Varella Ferreira, 2010
MVC - intenção MVC divide uma aplicação interativa em três componentes: O Modelo (M) contém toda a funcionalidade e dados da aplicação. Views (V) – a Visualização – apresenta informação para o usuário. Controllers (C) - controladores – manipulam a entrada. V e C, juntos correspondem à interface de usuário. Um mecanismo de propagação de mudanças assegura a consistência entre interface e modelo. Maria Alice G. Varella Ferreira, 2010

4 Maria Alice G. Varella Ferreira, 2010
MVC - problema As interfaces de usuário são particularmente propensas a mudar de requisitos. Quando a funcionalidade de um aplicativo necessita ser estendida, deve-se modificar os menus para acessar essas novas funções. Um cliente pode solicitar uma adaptação específica de interface de usuário, ou um sistema pode precisar ser transportado para outra plataforma com um diferente "look and feel" padrão. Mesmo a atualização para uma nova versão do sistema de janelas pode implicar alterações no código. A plataforma da interface de usuário de sistemas de longa duração representa, portanto, um alvo móvel. Maria Alice G. Varella Ferreira, 2010

5 Maria Alice G. Varella Ferreira, 2010
MVC - problema Diferentes usuários colocam exigências contraditórias sobre a interface do usuário. Uma datilógrafa digita as informações em formulários através do teclado. Um gerente quer usar o mesmo sistema, descrito por ícones e clicando em botões. Então, existe mais de uma interface de entrada. Conseqüentemente, o suporte para vários paradigmas de interface de usuário deve ser facilmente incorporado. A construção de um sistema com a flexibilidade necessária é cara e sujeita a erros se a interface de usuário estiver totalmente interligada com o núcleo funcional. Maria Alice G. Varella Ferreira, 2010

6 Maria Alice G. Varella Ferreira, 2010
MVC - problema Isto pode resultar na necessidade de desenvolver e manter vários sistemas de software diferentes, um para cada interface de utilizador. As alterações necessárias poderiam se propagar através de vários módulos. Maria Alice G. Varella Ferreira, 2010

7 Maria Alice G. Varella Ferreira, 2010
MVC - Forças As seguintes forças influenciam a solução: A mesma informação é apresentada de forma diferente em diferentes janelas, por exemplo, em um gráfico de barras ou pizza. A exibição eo comportamento do aplicativo deve refletir imediatamente as alterações. Alterações na interface do usuário devem ser fácil, e até mesmo possível em tempo de execução. Permitir padrões de 'look and feel' diferentes não deve afectar o código no núcleo da aplicação. Maria Alice G. Varella Ferreira, 2010

8 Maria Alice G. Varella Ferreira, 2010
MVC - solução O componente de modelo encapsula os dados básicos e funcionalidade. O modelo é independente das represen-tações de saída específicas ou da entrada de dados. Os componentes de exibição exibem informações para o usuário. Uma “vista” (visão) obtém os dados do modelo. Podem haver múltiplas visões do modelo. Cada visão tem um componente controlador associado. Controladores de recepção de dados de entrada, lidam geralmente com eventos que codificam o movimento do mouse, a ativação de botões do mouse, ou entrada de teclado. Maria Alice G. Varella Ferreira, 2010

9 Maria Alice G. Varella Ferreira, 2010
MVC - solução Os eventos são traduzidos em requisições de serviço ao modelo ou à vista. O utilizador interage com o sistema apenas através de controladores. A separação dos componentes do modelo e de vista permite múltiplas visões do mesmo modelo. Se o usuário alterar o modelo através do controlador de um ponto de vista, todos os outros pontos de vista, dependentes des-ses dados devem refletir as alterações. O modelo, portan-to, notifica todos os pontos de vista sempre que seus da-dos mudam. Os pontos de vista, por sua vez recuperam dados a partir dos novos dados do modelo e atualizam as informações exibidas. Maria Alice G. Varella Ferreira, 2010

10 Maria Alice G. Varella Ferreira, 2010
MVC - Estrutura Maria Alice G. Varella Ferreira, 2010

11 Maria Alice G. Varella Ferreira, 2010
MVC - Exemplo Considere-se um sistema de informação simples para as eleições políticas com representação proporcional. Isto oferece uma planilha para entrar dados e vários tipos de tabelas e gráficos para apresentar os resultados. Os usuários podem interagir com o sistema através de uma interface gráfica. Todos os vídeos de informação devem refletir alterações nos dados de voto imediatamente. Maria Alice G. Varella Ferreira, 2010

12 Maria Alice G. Varella Ferreira, 2010
MVC- Exemplo Deve ser possível integrar novas formas de apresen-tação de dados, tais como a atribuição de parlamen-tares a partidos políticos, sem grande impacto no sistema. O sistema também deve ser portátil para plataformas com diferentes 'look and feel' padrões, como estações de trabalho que rodam Motif o PCs em plataformas Windows. Maria Alice G. Varella Ferreira, 2010

13 Maria Alice G. Varella Ferreira, 2010
MVC - Exemplo Maria Alice G. Varella Ferreira, 2010

14 Referências bibliográficas
Pressman, R. Engenharia de Software. McGraw-Hill, 2002. Bezerra, E. Princípios de Análise e Projeto de Sistemas com UML. Rio de Janeiro: Elsevier, 2007. Buschmann, F. et al. Pattern-Oriented Software Architecture. V.1. Wiley Maria Alice G. Varella Ferreira, 2010


Carregar ppt "Projeto com reuso – MVC – Model-View-Controller"

Apresentações semelhantes


Anúncios Google