Boa tarde fantomas, desculpa não responder antes!
[quote=fantomas]Utilizar o Observer é UMA das maneiras de se implementar o MVC, muitos não são favoráveis ao uso dele por adicionar complexidade e dificultar o debug da aplicação.
Nos seus exemplos não foi utilizado este padrão, ou seja, foi adotada uma outra abordagem (sem o uso do observer).
Resumindo…tenho a impressão que a idéia do observer está fazendo o assunto mudar um pouco a direção, confirma?
E respondendo sua pergunta: sim, já que o padrão faz com que as 3 partes fiquem de certa forma associadas.
flws
[/quote]
Então realmente fizemos sem o uso do Observer e que na minha opinião ficou muito bom!
Está bem definido o que é visão, controle e modelo. A aplicação da propagação de Exception do modelo até a visão nas validações e erros também ficou muito legal, super bacana e muito fácil de entender.
Porém se eu tiver várias visões, como elas se atualizarão com uma mudança no modelo?
E percebo que existe um acoplamento fortíssimo entre as 3 partes. Por isso pensei no uso do Observer afim de libertar as partes para que fiquem flexíveis.
Na verdade, se for olhar o esquema da comunicação entre as partes, repare que o modelo avisa a visão sobre mudanças sem se associar diretamente a visão e o mesmo ocorre com a visão avisando o controle sobre mudanças feitas (Ex: botões clicados). Outra coisa que reparei é que o “controle é quem recebe o objeto visão e objeto modelo” e a “visão recebe o objeto modelo” (associação direta).
Lembro que a primeira postagem do código-exemplo que postei tinha a visão completamente desacoplada do controle (a visão podia receber qualquer tipo de controlador). Porém o controlador fazia uma “ponte” entre visão e modelo na hora de atualizar a visão, o que sabemos não ser correto! Aí então surgiu a idéia de aplicar o observer para que a visão se atualize com o estado do modelo, as Exception’s para o caso de problemas de validação e erros e a visão transmitindo ao controle somente eventos sem conhecer nada sobre ele (o controle recebe a visão e se registra nela - acho que é assim que se fala).
Entenderam a idéia? Acredito que assim teriamos uma implementação bem flexivel, ou seja, posso alterar a visão (V) sem alterar nada no resto (C,M) que é o ponto chave aí da questão. Já o modelo não tem jeito se for alterado a visão e o controle vão sofrer impacto (isso digo no caso de mudar os métodos existentes na interface do modelo).
Tem lógica o que estou falando ou estou “dirigindo completamente embriagado sem direção alguma”? ( SE BEBER NÃO DIRIJA!
)
Um abraço a todos do GUJ é um prazer estar aqui com todos vocês trocando essas idéias. 
Um abração aí para fantomas, Bruno Laturner e o André Fonseca que evoluiram muito o tópico!
Obrigado fico no aguardo pelas respostas!