(Mais) Dúvidas sobre MVC

Olá! Sou estagiário e preciso ajudar a desenvolver um sistema desktop no qual os dados são gravados num banco de dados remoto.

Atualmente temos usados vários controladores, um para cada interface visual e, é claro, estes estão amarrados tanto aos views quanto ao modelo.

A idéia atual é mudar para um controlador abstrato e continuar com vários controladores extendendo o mesmo (o que ñ muda muito o cenário).

Favor responder “genericamente”, sem exemplos usando recursos que só existem na tecnologia Java :wink:

===========
Um exemplo (editando os dados de um funcionário):

Imagine uma janela com duas views. Para mostrar os dados de um funcionário, o view pede uma lista de funcionários ao controler, que acessa o banco e cria uma lista para guarda-los.

O usuário seleciona um da lista e o controlador é chamado para pegar os detalhes do funcionário selecionado. De posse destes dados, envia para outro controlador de outra view (que está na mesma tela). Esta, por sua vez povoa a tela com os dados para edição.

===========

Às vezes uma tela ainda tem um mapeamento para uma estrutura de dados criada apenas para este fim… posso usar, por exemplo, uma instância de funcionário (do model) para guardar dados da interface? pois é isto que estamos fazendo…

Tudo isto me parece muito redundante, e difícil de resolver na prática sem MUITO MUITO trabalho “sem sentido”, pois da maneira “bagunçada” sai tudo muito mais rápido.

Será que meu problema tem solução? dá pra melhorar sem reescrever tudo? como? não posso simplesmente reestruturar o código que já foi escrito aqui, mas posso pelo menos corrigir os erros mais graves.

Abraço
Sou estudante, não me engulam! :slight_smile:

EDIT 1: A aplicação é grande, e ainda demorará uns 6 meses pra ficar pronta.