none
Retorno de vários itens no padrão MVC RRS feed

  • Pergunta

  • Pessoal,

     

    Estou iniciando a modelagem de um novo sistema, estou aplicando MVC, porém estou com dificuldade de entender como controlar/retornar vários objetos.

     

    Por exemplo: Tendo as classes Model, Controller e View (que é um WinForm), como eu faria quando o usuário faz uma pesquisa que retorne vários Pedidos, por exemplo?

     

    A classe Model faz o acesso ao banco de dados, se eu digito um código de pedido através do método getPedido(int numPedido) eu consigo preencher suas propriedades e tudo bem.

     

    Mas e no caso de fazer uma pesquisa de todos os pedidos de determinado cliente em um período de tempo? Quem seria o responsável por fazer isso? No classe Controller não, pois senão daí eu iria espalhar o acesso ao banco de dados, a classe Model seria uma única instância de pedido...

     

    Alguém pode dar alguma sugestão, link, literatura?

     

    segunda-feira, 14 de julho de 2008 13:49

Respostas

  • É por aí,...

     

    Um repositório é um objeto que participa da manutenção do ciclo de vida dos objetos de domínio. Sua principal característica é fornecer uma interface mais próxima ao de uma Collection usando termos significativos para o negócio. E respondendo sua pergunta... Sim, ele faz parte do M do MVC.

     

    []s

    quinta-feira, 17 de julho de 2008 12:48

Todas as Respostas

  • opa,... Brandão,

     

    Use o pattern: Repository. Este objeto, com uma interface de negócio, retornaria todos os objetos num: GetAll() da vida.

     

    Entretanto, é bem comum também ter essa lógica implementada em "managers". Fachadas que expões métodos sobre uma determinada entidade - que ganham super poderes em arquiteturas DTO/BO.

     

    []s

    terça-feira, 15 de julho de 2008 01:14
  • Laércio,

     

    Estou crú ainda em padrões e o meu entendimento de UML é básico o que prejudica a minha compreenção do link que você me enviou.

    Mas se eu entendi, basicamente, o que eu vou implementar é uma Collection, e se baseando em uma arquitetura MVC, essa Collection seria um objeto Model, correto?

     

    terça-feira, 15 de julho de 2008 14:35
  • É por aí,...

     

    Um repositório é um objeto que participa da manutenção do ciclo de vida dos objetos de domínio. Sua principal característica é fornecer uma interface mais próxima ao de uma Collection usando termos significativos para o negócio. E respondendo sua pergunta... Sim, ele faz parte do M do MVC.

     

    []s

    quinta-feira, 17 de julho de 2008 12:48
  • Valeu!... Sempre aprendendo, devagar e sempre... hehe!

    quinta-feira, 17 de julho de 2008 13:24