Dúvida com MVC  XML
Índice dos Fóruns » Arquitetura de Sistemas
Autor Mensagem
sergiotaborda
GUJ Expert
[Avatar]

Membro desde: 22/03/2005 20:57:48
Mensagens: 3433
Offline

djemacao wrote:
Essa discussão está longe do fim, mesmo porque, o pós DDD criaram várias "normas" sobre como o que deveria ser layer.


Não sei se onde vc tirou isso (quer dizer, sei, mas vamos fingir que é irrelevante)
DDD é para o Domain. O Domain , o dominio é palavra que designa um andar. Chamado normalmente de "negocio".
A ironia é que "negocio" está errado. Sistemas não têm negocio, têm dominios. Empresas têm negocios. Pessoas têm negocios.
A abstração do negocio, a "binirização" do negocio é o dominio. Esta nomenclatura é antiga. Não foi inventada pelo DDD. O DDD apenas diz que vc pode guiar seu desenvolvimento focando-se principalmente no dominio.
Mas para que fique claro: dominio é um andar: Cliente , Apresentação , Dominio , Integração, Recursos. É o mesmo andar que se chama também de "negocio".


Talvez o que o sergiotaborda interprete em relação a uma arquitetura de cubo seja mais fácil de entender. Porém, irá de encontro a explicação do blueprints se pensar no layer como "andares", porque MVC não seria bem isso. Entretanto, se pensar no MVC Model 2 (e não MVC puro), ele não está totalmente isolado em uma Presentation Layer, seguindo o raciocínio do sergiotaborda.


Está sim. Ele está todo na presentation layer (Andar de Apresentação).
O problema aqui é com o conceito de MVC2 - que quase ninguem entendeu direito.

Primeiro que tudo, o que seria o MVC1 ? É um outro tipo de MVC ? Quandos ha afinal ? Dizem que o JSF é o MVC3, e ai ?
Só existe um tipo de MVC. MVC é um padrão. Apenas existe um.
O que existe são 3 formas de o implementar no andar de apresentação de uma aplicação web em java.

MVC1 ( a primeira tentativa)
Crie-se uma forma de interagir com o protocolo HTTP chame-lhe Servlet. Crie uma maneira dos Servelts cooperarem. Chame-lhe Servlet Container.

Quem recebe os dados ? um servlet. Quem processa os dados ? um servlet. Quem manda a resposta ? um servlet ?
No modelo não-MVC um servlet só - uma classe só - faria tudo. No MVC 1 um tipo diferente de servlet fará cada coisa.
Como o recebimento de dados já é tratado pelo container ( que tradus HTTP para objetos dentro do request) só precisamos implementar um servlet para o controle e um para a resposta. Este é o modelo MVC1.

Mas implementar um servlet para resposta escrevendo HTML na mão dentro do servlet é uma porcaria... dai veio a ideia do JSP.
O JSP é um servlet especial que será compilado a partir de um arquivo especialmente formatado. Isto simplifica muito a implementação do servlet de resposta. O mecanismo serlet de controle + jsp de resposta é o modelo MVC2.
O servlet de controle é muito simples de padronizar e precisamos apenas de uma classe desse tipo. Por isso vários frameworks surgiram para simplificar ainda mais o MVC2 porque agora vc nem precisa mais implementar o servlet de controle ( apenas um pedaço dele) e o jsp.

O modelo MVC3 ( do jsf) introduz o conceito de evento. Este é um conceito que existe no padrão MVC não não era necessário no MVC1 e 2. ( ou melhor, o evento era implicito no prioprio request. O request é o evento).
No modelo MVC3 o request não é mais o evento, o evento é uma coisa em si mesma. Não ha mas JSP e sim um mecanismo de definir a resposta. Definir, não renderizar. O MVC3 isola o C num servlet de controle especial ( o servlet do JSF) o modelo no managedbean e a view num arquivo de face ( que pode ser implementado em jsp, mas isso é um detalhe tecnologico).
Estas coisas interagem pelo modelo MVC do padrão comum , via eventos.

Nada disto sai fora da camada de apresentação. A View no é o HTML do browser, a view é o servlet/jsp/mecanismo que renderiza a resposta. É um detalhe que seja HTML. poderia ser xml, soap, json, etc...

E o ajax ? perguntará vc... o Ajax é um MVC do andar cliente. O Ajax funciona apenas no browser. Quando o ajax consulta o servidor, ele está consultando o model ( do ponto de vista dele é o model) que invoca a view do andar de apresentação e ai vai...
São dois MVC trabalhando juntos. Um no cliente e um no servidor.

Antigamente, sem ajax, não havia MVC no cliente e por isso as aplicações eram chatas. RIA nada mais é que levar o MVC para o browser, em javascript e ajax.



Penso sempre que, ao criarem essas normas no DDD, dá a impressão de desacoplamento total entre as camadas, o que no MVC Model 2 não existe. Também não posso dizer que os frameworks Java são o MVC Model 2 como a Sun pregou, pois suas características podem se diferir no MVC Model 2.
No fim das contas, vejo que MVC se tornou uma buzzword que todo framework quer dizer que é, mas cada framework, inclusive de cada linguagem, possui um MVC com características diferentes, interpretações diferentes, o que nos leva a pensar se realmente o MVC é necessário no nome.


À luz que acabei de dizer, nenhuma destas frases faz sentido.

Criando sua própria API de Validação



Blog do MiddleHeaven
[WWW]
djemacao
GUJ Master

Membro desde: 04/06/2007 17:47:24
Mensagens: 1030
Offline

Sergio, vamos deixar de lado um pouco o DDD e seus conceitos. Vamos entender o que seria layer, ao meu ver, no blueprints. Como você mesmo disse, e eu conheço o MVC Model 2 e 1, bem, cada parte, embora esteja trabalhando claro, a apresentação do cliente, são partes que interagem entre si, mas estão separadas de alguma forma. Ao não chamarmos de layer (ao qual traduzimos como camadas), estariamos traduzindo cada parte como o que? Parte? Etapa? Percebe que não estou dizendo que uma Layer do DDD é como uma Layer do MVC, pois sei que não são. Mas questiono o fato de que estão unidas por um lado e separadas por outro. Veja o caso do pessoal que diz matar um DAO e adicionar lógica aonde, no controller? Ou vamos criar um façade aqui para acessar pelo controller assim chamamos de...?
Ao entrarmos com o DDD, situações como aquelas em que alguns defendem o fim do DAO graças a JPA, vejo como uma invasão da Layer no modo DDD de pensar. E quando usamos activerecord?
A meticulosa capacidade de cada um vir aqui e explicar seus pontos de vista não me convencem bem. Isso tudo no Java. Em .Net já vi defensores do DDD fazerem outras coisas estranhas, mas falaremos disso em outra ocasião.
Aguardo a sua explicação. Se quiser, pode desenhar .

PS: Um edit rápido, onde viu que JSF é tido como MVC3?

This message was edited 1 time. Last update was at 24/10/2009 02:24:49


"Quanto mais aprendo mais tenho consciência que nada sei."
sergiotaborda
GUJ Expert
[Avatar]

Membro desde: 22/03/2005 20:57:48
Mensagens: 3433
Offline

djemacao wrote:Sergio, vamos deixar de lado um pouco o DDD e seus conceitos. Vamos entender o que seria layer, ao meu ver, no blueprints. Como você mesmo disse, e eu conheço o MVC Model 2 e 1, bem, cada parte, embora esteja trabalhando claro, a apresentação do cliente, são partes que interagem entre si, mas estão separadas de alguma forma. Ao não chamarmos de layer (ao qual traduzimos como camadas), estariamos traduzindo cada parte como o que? Parte? Etapa? Percebe que não estou dizendo que uma Layer do DDD é como uma Layer do MVC, pois sei que não são. Mas questiono o fato de que estão unidas por um lado e separadas por outro.


Esse conceito de unidas foi vc que inventou. elas não estão unidas.
MVC modelo 1 e 2 acontecem apenas no servidor, apenas dentro do Servlet Container. Não ha como confundir com o browser ou qq coisa exterior ou em outro andar ou nodo.

Não entendi qual é a sua duvida. Oque é um layer ? Layer (andar) é uma separação lógica da responsabilidade dos objetos do sistema. é uma forma de separar Responsabilidade sobre o controle de fluxo. É a versão arquitetural do padrão de design Chain of Responsability. Cada andar é um "container lógico" para as classes que fazem certos trabalhos.


Ao entrarmos com o DDD, (...)


Vc falou para esquecer o DDD.

DDD não é chamado para aqui. Ele restringe-se a um só andar e é uma metodologia de desenvolvimento. Não tem nada a haver com arquitetura.


PS: Um edit rápido, onde viu que JSF é tido como MVC3?


Não lembro. Algum blog de alguém.

Criando sua própria API de Validação



Blog do MiddleHeaven
[WWW]
djemacao
GUJ Master

Membro desde: 04/06/2007 17:47:24
Mensagens: 1030
Offline

sergiotaborda wrote:

Esse conceito de unidas foi vc que inventou. elas não estão unidas.
MVC modelo 1 e 2 acontecem apenas no servidor, apenas dentro do Servlet Container. Não ha como confundir com o browser ou qq coisa exterior ou em outro andar ou nodo.

Não entendi qual é a sua duvida. Oque é um layer ? Layer (andar) é uma separação lógica da responsabilidade dos objetos do sistema. é uma forma de separar Responsabilidade sobre o controle de fluxo. É a versão arquitetural do padrão de design Chain of Responsability. Cada andar é um "container lógico" para as classes que fazem certos trabalhos.

Todas porque qualquer parte, tirando a chamada a um banco de dados, web services ou arquivos em geral, acontecem em um Servlet Container ou em um EJB Container. Quando se refere a um layer o que chama de separar responsabilidade? Um MVC separa responsabilidade também. Dizer que MVC não pode ser layer é uma visão um tanto quanto crítica. Só porque o MVC trata de controle de fluxo? Isso que não entendo, porque a palavra Layer não se encaixaria no MVC, em cada parte? Vai me dizer que cada framework que tem por ai não tem uma visão um pouco diferente dessas tais "separações de responsabilidade"?
Não estou nem falando de browser, que apenas recebe os dados ou os envia.


sergiotaborda wrote:
Vc falou para esquecer o DDD.

DDD não é chamado para aqui. Ele restringe-se a um só andar e é uma metodologia de desenvolvimento. Não tem nada a haver com arquitetura.


Apenas cito DDD porque o conceito de que a palavra layer no MVC é errônea parte mais de seus defensores. Não digo que a metodologia é ruim, nada disso. Apenas quero entender porque não podemos falar layer. O que me impediria ter uma layer dentro de outra ou chamá-la assim? Estou sendo tão errado que seria um crime isso? Ou o conceito aqui é por ser confuso? É nisso que quero chegar.

Valeu se puder responder.

Abraço

"Quanto mais aprendo mais tenho consciência que nada sei."
sergiotaborda
GUJ Expert
[Avatar]

Membro desde: 22/03/2005 20:57:48
Mensagens: 3433
Offline

djemacao wrote:
sergiotaborda wrote:

Esse conceito de unidas foi vc que inventou. elas não estão unidas.
MVC modelo 1 e 2 acontecem apenas no servidor, apenas dentro do Servlet Container. Não ha como confundir com o browser ou qq coisa exterior ou em outro andar ou nodo.

Não entendi qual é a sua duvida. Oque é um layer ? Layer (andar) é uma separação lógica da responsabilidade dos objetos do sistema. é uma forma de separar Responsabilidade sobre o controle de fluxo. É a versão arquitetural do padrão de design Chain of Responsability. Cada andar é um "container lógico" para as classes que fazem certos trabalhos.

Todas porque qualquer parte, tirando a chamada a um banco de dados, web services ou arquivos em geral, acontecem em um Servlet Container ou em um EJB Container. Quando se refere a um layer o que chama de separar responsabilidade?


Como eu disse andar (pare de chamar de layer) é uma separação lógica. "lógica" significa que só existe na cabeça dos desenvolvedores. Na realidade é tudo um conjunto de objetos vivendo no heap da JVM.
Talvez seja dificil de entender, mas eu não sei explicar melhor.


Um MVC separa responsabilidade também. Dizer que MVC não pode ser layer é uma visão um tanto quanto crítica.


Não fui eu que inventei o MVC nem a nomenclatura de layer nem a sobreposição em camadas.
O que estou dizendo são os factos. Simplesmente MVC não são nomes de 3 layers. É o nome de um padrão de projeto que é utilizado para organizar a implementação dentro de uma layer.
Não é uma critica. É atestar a realidade.


Isso que não entendo, porque a palavra Layer não se encaixaria no MVC, em cada parte?


Simplesmente não encaixa. Não é assim. O nome "layer" não pode ser aplicado para essa finalidade.
Ha uma nomenclatura tenica a ser seguida.


Vai me dizer que cada framework que tem por ai não tem uma visão um pouco diferente dessas tais "separações de responsabilidade"?


Vou. Padrões de Projeto são seguidos por todo o mundo. A implementação, os trade-offs e as nomenclaturas podem ligeiramente
fazê-lo pensar que não, mas é real.




Apenas cito DDD porque o conceito de que a palavra layer no MVC é errônea parte mais de seus defensores.


Não sei de onde tirou essa idéia, mas está enganado.
O conceito do MVC , o padrão MVC , e o conceito de camadas não têm nada a haver, nunca tiveram. Esta errada concepção
que se alastrou como fogo na palha por aqui é simplesmente errada. E o fato de haver muita gente que não sabe, ou não entende
não atesta para a sua veracidade, mas sim para a falta de compreensão de OO por parte dessas pessoas. E enfim, atesta um nivel técnico baixo para o pais como um todo.

Não é uma questão de gosto. É algo que simplesmente é assim. A sua unica opção é entender como é. Tentar dizer que está errado não faz sentido. É como vc tentar convencernos que a palavra "não" é usada para concordar com o que as outras pessoas falam. Simplesmente não. Nunca será. Mesmo que algum maluco faça isso e tenha convensido uma duzia de palermas a fazer o mesmo.


Apenas quero entender porque não podemos falar layer.


Primeiro porque sua lingua mãe não é o inglês. Segundo porque layer não o mesmo conceito que MVC. é como dizer pão e nuvem. Não representam a mesma coisa.


O que me impediria ter uma layer dentro de outra ou chamá-la assim?


Simples. Layers existem empilhadas. Umas em cima das outras. Não dentro.


Estou sendo tão errado que seria um crime isso? Ou o conceito aqui é por ser confuso? É nisso que quero chegar.


Você está confuso sim. Não é crime estar confuso. É crime permanecer confuso.
Você precisa ler mais, estudar mais e melhor até você entender a diferença.

O conceito não é confuso. O conceito é muito simples.

This message was edited 1 time. Last update was at 24/10/2009 22:01:50


Criando sua própria API de Validação



Blog do MiddleHeaven
[WWW]
djemacao
GUJ Master

Membro desde: 04/06/2007 17:47:24
Mensagens: 1030
Offline

Ok Sergio, façamos o seguinte, me passe o nome dos livros que leu, já que o que menciona é não aceitar layer para cada parte de MVC, agora me prove porque. Citei o blueprints, agora é sua vez de citar bons livros já que acha que não li os bons.
Me desculpe, mas sua capacidade de convencimento é fraca porque mostra explicações, até muito boas, mas as fontes que são mais necessárias ainda não vi. Fora que sempre cita o Java, não conheci o DDD só no Java, conheci no .Net também.
Não paro de chamar de layer porque são assim nos livros. Não dá pra ficar chamando de andar. Desculpe se estou lhe irritando, mas sou chato mesmo .

"Quanto mais aprendo mais tenho consciência que nada sei."
analyser
JavaEvangelist
[Avatar]

Membro desde: 26/02/2007 09:31:49
Mensagens: 329
Offline

djemacao wrote:Ok Sergio, façamos o seguinte, me passe o nome dos livros que leu, já que o que menciona é não aceitar layer para cada parte de MVC, agora me prove porque. Citei o blueprints, agora é sua vez de citar bons livros já que acha que não li os bons.
Me desculpe, mas sua capacidade de convencimento é fraca porque mostra explicações, até muito boas, mas as fontes que são mais necessárias ainda não vi. Fora que sempre cita o Java, não conheci o DDD só no Java, conheci no .Net também.
Não paro de chamar de layer porque são assim nos livros. Não dá pra ficar chamando de andar. Desculpe se estou lhe irritando, mas sou chato mesmo .



O problema é exatamente esse, vários livros estão errados sobre seus conceitos, pq? Pq leram outros livros errados, e assim por diante, é um conceito muito difícil de corrigir, é como uma bola de neve, um explica o conceito errado e assim vai, partindo pelos péssimos professores universitários que temos, não quero generalizar, existem ótimos professores e eu conheço sim, mas também existem outros que não aplicam o conceito certo, e a aprovação desta monografia apresentada neste post, é uma prova disso.

[]s

Analyser
javamaniaco
Java Ninja

Membro desde: 04/04/2007 19:21:36
Mensagens: 268
Offline

analyser wrote:
djemacao wrote:Ok Sergio, façamos o seguinte, me passe o nome dos livros que leu, já que o que menciona é não aceitar layer para cada parte de MVC, agora me prove porque. Citei o blueprints, agora é sua vez de citar bons livros já que acha que não li os bons.
Me desculpe, mas sua capacidade de convencimento é fraca porque mostra explicações, até muito boas, mas as fontes que são mais necessárias ainda não vi. Fora que sempre cita o Java, não conheci o DDD só no Java, conheci no .Net também.
Não paro de chamar de layer porque são assim nos livros. Não dá pra ficar chamando de andar. Desculpe se estou lhe irritando, mas sou chato mesmo .



O problema é exatamente esse, vários livros estão errados sobre seus conceitos, pq? Pq leram outros livros errados, e assim por diante, é um conceito muito difícil de corrigir, é como uma bola de neve, um explica o conceito errado e assim vai, partindo pelos péssimos professores universitários que temos, não quero generalizar, existem ótimos professores e eu conheço sim, mas também existem outros que não aplicam o conceito certo, e a aprovação desta monografia apresentada neste post, é uma prova disso.

[]s

Eu penso o seguinte, livros não estão errados. São suas interpretações que o são. Defender um mero programador/arquiteto ou sei lá o que for em um fórum contra o blueprints ou livros é esquisito, não acha? Ótimos autores não leem qualquer porcaria e nem leem pouco. E ótimos autores não são autores realmente, não ganham com isso na informática e nunca vão ganhar.
Não são que livros leram de outros errados e virou bola de neve, vamos interpretar que as coisas mudam. Ainda agora vi uma chamada no fórum de notícias do que seria um livro sobre design patterns e o que mudariam. Hora, é assim o mundo, porque não no desenvolvimento? As regras, palavras e padrões se alteram. As questões que 10 anos eram razoavelmente respondidas bem, agora são totalmente diferentes, porque? Porque as perguntas são diferentes e exigem respostas diferentes.
Logo, discussões sobre, é layer, não é, é DDD, não é, é camada, andar e por ai vai, fica ridícula e bem sem sentido.
Desculpe ai os dois que ficaram discutindo é ou não layer, mas sinceramente, não ganhei nada com essa discussão, o que gerou dúvida no começo apenas me levou a uma resposta de tantas perguntas que me fiz: Eu só sei que estão dificultando demais o que seria simples, só isso. To começando a realmente achar que Ruby on Rails é onde devo pousar e mudar meu nick pra rubymaniaco .

"Iniciante sim, mas ignorante jamais."

"Seu corpo não pode estar onde sua mente SUBCONSCIENTE nunca esteve. Aprenda a leva-la até lá."
sergiotaborda
GUJ Expert
[Avatar]

Membro desde: 22/03/2005 20:57:48
Mensagens: 3433
Offline

javamaniaco wrote:
analyser wrote:
djemacao wrote:Ok Sergio, façamos o seguinte, me passe o nome dos livros que leu, já que o que menciona é não aceitar layer para cada parte de MVC, agora me prove porque. Citei o blueprints, agora é sua vez de citar bons livros já que acha que não li os bons.
Me desculpe, mas sua capacidade de convencimento é fraca porque mostra explicações, até muito boas, mas as fontes que são mais necessárias ainda não vi. Fora que sempre cita o Java, não conheci o DDD só no Java, conheci no .Net também.
Não paro de chamar de layer porque são assim nos livros. Não dá pra ficar chamando de andar. Desculpe se estou lhe irritando, mas sou chato mesmo .



O problema é exatamente esse, vários livros estão errados sobre seus conceitos, pq? Pq leram outros livros errados, e assim por diante, é um conceito muito difícil de corrigir, é como uma bola de neve, um explica o conceito errado e assim vai, partindo pelos péssimos professores universitários que temos, não quero generalizar, existem ótimos professores e eu conheço sim, mas também existem outros que não aplicam o conceito certo, e a aprovação desta monografia apresentada neste post, é uma prova disso.

[]s

Eu penso o seguinte, livros não estão errados. São suas interpretações que o são.


Não tenho nem palavras para descrever como essa pensamento é completamente calamitoso.

Se pessoas podem estar erradas e pessoas escrevem livros, obviamente livros podem estar errados. Tão simples assim.


Defender um mero programador/arquiteto ou sei lá o que for em um fórum contra o blueprints ou livros é esquisito, não acha?


Então. Vc leu o blueprints. E que mais você leu ? leu em ingles ou portugues ? qual é o nivel de dominio que vc tem dessas linguas ?
Não será você que interpretou mal os textos ? Qual livro você leu dizendo que diz que MVC é separação em camadas. O blueprints não diz isso ( por favor cite se vc encontrar onde diz isso )

Não sei onde vamos parar assim ...


Ótimos autores não leem qualquer porcaria e nem leem pouco. E ótimos autores não são autores realmente, não ganham com isso na informática e nunca vão ganhar.
Não são que livros leram de outros errados e virou bola de neve, vamos interpretar que as coisas mudam.


Já que vc gosta de livros e livros não mentem que tal ler sobre a Inquisição ? afinal se a biblia diz que a terra é quadrada porque raios ela é redonda ? Ela tem que ser quadrada como está nos livros .. .e no mapa. o mapa tb é quadrado. É a prova que a terra não é redonda ! ...

Eu já não sei mais se é ingenuidade ou malicia...


Criando sua própria API de Validação



Blog do MiddleHeaven
[WWW]
analyser
JavaEvangelist
[Avatar]

Membro desde: 26/02/2007 09:31:49
Mensagens: 329
Offline

javamaniaco wrote:
analyser wrote:
djemacao wrote:Ok Sergio, façamos o seguinte, me passe o nome dos livros que leu, já que o que menciona é não aceitar layer para cada parte de MVC, agora me prove porque. Citei o blueprints, agora é sua vez de citar bons livros já que acha que não li os bons.
Me desculpe, mas sua capacidade de convencimento é fraca porque mostra explicações, até muito boas, mas as fontes que são mais necessárias ainda não vi. Fora que sempre cita o Java, não conheci o DDD só no Java, conheci no .Net também.
Não paro de chamar de layer porque são assim nos livros. Não dá pra ficar chamando de andar. Desculpe se estou lhe irritando, mas sou chato mesmo .



O problema é exatamente esse, vários livros estão errados sobre seus conceitos, pq? Pq leram outros livros errados, e assim por diante, é um conceito muito difícil de corrigir, é como uma bola de neve, um explica o conceito errado e assim vai, partindo pelos péssimos professores universitários que temos, não quero generalizar, existem ótimos professores e eu conheço sim, mas também existem outros que não aplicam o conceito certo, e a aprovação desta monografia apresentada neste post, é uma prova disso.

[]s

Desculpe ai os dois que ficaram discutindo é ou não layer, mas sinceramente, não ganhei nada com essa discussão


Amigo, nem todas as discussões e comentários agregam algo de valor, por exemplo seu comentário num agregou em nada tb a discussão.


Eu só sei que estão dificultando demais o que seria simples, só isso.


Exato, esse é o problema.


To começando a realmente achar que Ruby on Rails é onde devo pousar e mudar meu nick pra rubymaniaco .


Acho que a discussão se volta para o conceito de MVC e Camadas, e não para a linguagem java em específico, mais tai fiquei com uma dúvida agora que vc pode me esclarecer, o conceito de MVC e Camadas no ruby é diferente?

This message was edited 2 times. Last update was at 28/10/2009 08:49:31


Analyser
pedromuyala
JavaEvangelist
[Avatar]

Membro desde: 02/01/2009 19:08:04
Mensagens: 340
Offline

Olá senhores! Boa noite.

Respeito demais a opinião de ambos e não quero que pareça que estou defendendo um lado ou outro mas a explicação do sergiotaborda neste link foi (na minha humilde opinião de quem está aprendendo MVC) uma das melhores explicações detalhadas do que realmente é MVC.

Mas respeito demais a opinião de todos. Tudo que estou aprendendo é com o esforço e boa vontade de todos. Obrigado a todos os companheiros!

"O melhor grupo não é aquele que reúne membros perfeitos, mas aquele
onde cada um aceita os defeitos do outro, com isso se ajudam e conseguem perdão para seus próprios defeitos".
djemacao
GUJ Master

Membro desde: 04/06/2007 17:47:24
Mensagens: 1030
Offline

sergiotaborda wrote:
javamaniaco wrote:
analyser wrote:
djemacao wrote:Ok Sergio, façamos o seguinte, me passe o nome dos livros que leu, já que o que menciona é não aceitar layer para cada parte de MVC, agora me prove porque. Citei o blueprints, agora é sua vez de citar bons livros já que acha que não li os bons.
Me desculpe, mas sua capacidade de convencimento é fraca porque mostra explicações, até muito boas, mas as fontes que são mais necessárias ainda não vi. Fora que sempre cita o Java, não conheci o DDD só no Java, conheci no .Net também.
Não paro de chamar de layer porque são assim nos livros. Não dá pra ficar chamando de andar. Desculpe se estou lhe irritando, mas sou chato mesmo .



O problema é exatamente esse, vários livros estão errados sobre seus conceitos, pq? Pq leram outros livros errados, e assim por diante, é um conceito muito difícil de corrigir, é como uma bola de neve, um explica o conceito errado e assim vai, partindo pelos péssimos professores universitários que temos, não quero generalizar, existem ótimos professores e eu conheço sim, mas também existem outros que não aplicam o conceito certo, e a aprovação desta monografia apresentada neste post, é uma prova disso.

[]s

Eu penso o seguinte, livros não estão errados. São suas interpretações que o são.


Não tenho nem palavras para descrever como essa pensamento é completamente calamitoso.

Se pessoas podem estar erradas e pessoas escrevem livros, obviamente livros podem estar errados. Tão simples assim.


Defender um mero programador/arquiteto ou sei lá o que for em um fórum contra o blueprints ou livros é esquisito, não acha?


Então. Vc leu o blueprints. E que mais você leu ? leu em ingles ou portugues ? qual é o nivel de dominio que vc tem dessas linguas ?
Não será você que interpretou mal os textos ? Qual livro você leu dizendo que diz que MVC é separação em camadas. O blueprints não diz isso ( por favor cite se vc encontrar onde diz isso )

Não sei onde vamos parar assim ...


Ótimos autores não leem qualquer porcaria e nem leem pouco. E ótimos autores não são autores realmente, não ganham com isso na informática e nunca vão ganhar.
Não são que livros leram de outros errados e virou bola de neve, vamos interpretar que as coisas mudam.


Já que vc gosta de livros e livros não mentem que tal ler sobre a Inquisição ? afinal se a biblia diz que a terra é quadrada porque raios ela é redonda ? Ela tem que ser quadrada como está nos livros .. .e no mapa. o mapa tb é quadrado. É a prova que a terra não é redonda ! ...

Eu já não sei mais se é ingenuidade ou malicia...


Sergio, na boa, se não aceita o termo layer no Java para MVC, vá reclamar ao pessoal da Sun. Além do que, não vejo tal Layer como uma separação, aliás, nem no DDD existe real e total desacoplamento. Uma coisa sempre depende de outra. Pra mim, só chamaria algo de "Andar", se fosse físico.
Quanto ao domínio da lingua, pelo menos não invento traduções ou começo a criar traduções para Layer. Não vou dizer que layer é andar, porque não é.
Outro detalhe, não reclame dos autores e sim de você. Se tem uma boa teoria, a defenda. Se apenas a apresenta em fórum, esqueça.

"Quanto mais aprendo mais tenho consciência que nada sei."
djemacao
GUJ Master

Membro desde: 04/06/2007 17:47:24
Mensagens: 1030
Offline

pedromuyala wrote:Olá senhores! Boa noite.

Respeito demais a opinião de ambos e não quero que pareça que estou defendendo um lado ou outro mas a explicação do sergiotaborda neste link foi (na minha humilde opinião de quem está aprendendo MVC) uma das melhores explicações detalhadas do que realmente é MVC.

Mas respeito demais a opinião de todos. Tudo que estou aprendendo é com o esforço e boa vontade de todos. Obrigado a todos os companheiros!

Ele é bom com as palavras, admito. Mas infelizmente falta boas indicações de bibliografia. Se ler o DDD mesmo, verá que ele não foi escrito especificamente para Java, e nem será. Aliás, 90% dos padroes que criam por ai, são muitas teorias não implantadas.
É só ver o ActiveRecord. Falar na teoria é ótimo, mas na prática, foi o Rails que o concretizou e muito bem. Agora, se for ler nas entrelinhas o que seria ActiveRecord, algumas coisas são sempre diferentes na prática, e sabe porque?
"Porque na prática a teoria é outra"

"Quanto mais aprendo mais tenho consciência que nada sei."
barbon
JavaChild
[Avatar]

Membro desde: 27/07/2010 18:10:08
Mensagens: 147
Localização: São José do Rio Preto
Offline

Segue tutorial sobre MVC com SWING utilizando Observer:

http://www.patternizando.com.br/2011/03/design-pattern-observer-com-aplicacao-swing-jse/

http://www.patternizando.com.br
[WWW]
 
Índice dos Fóruns » Arquitetura de Sistemas
Ir para:   
Powered by JForum 2.1.8 © JForum Team