-
Pegadinha do malandro, a questão fala de característica de ajax pergunta de patterns que criam camada de isolamento para sistemas e questiona se os padrões são úteis para resolver problema de incompatibilidade entre múltiplos NAVEGADORES.
Navegadores são browsers e não sinônimo de usuário.
Cespe desonesto.
-
não entendi essa. Alguém pode me explicar?
-
Vamos por partes...
Através da utilização do Padrão Facade, é possível centralizar em um único ponto de acesso requisições de diversos clientes, delegando essas requisições aos objetos "endereçados".
Ex: http://paginas.fe.up.pt/~aaguiar/as/gof/hires/Pictures/facad057.gif
Com isso é possível um melhor controle entre as interações de diferentes aplicações, ou camadas por exemplo, ja que vc sempre sabe o ponto de comunicação entre elas.
Já o padrão Adapter, permite a comunicação entre Objetos a princípio incompatíveis, criando um intermediador, que conheça as "interfaces" de ambos. O exemplo clássico é um adaptador de tomadas..
O que a questão sugere é se: em uma situação em que uma aplicação web, acessada por diferentes navegadores, teria que tratar as incompatibilidades e especificidades de cada navegador, teríamos algum benefício em utilizar os padrões Adapter e Facade.
Pra mim o benefício sera claro, ja que teríamos um único ponto de acesso (garantido pelo padrão Facade) onde todas as requisições seriam tratadas (adaptadas pelo padrão Adapter), facilitando assim o controle.
Firefox I.E. Opera
\ | /
\ | /
\ | /
------------------| Facade |----------------
| | Adapter | |
| |
| |
| Aplicação |
|__________________________________ |
@ricardoasimoes, entendeu ou enrolei demais?? :)
-
Talvez eu esteja errado, mas o que os padrões de projeto de software tem haver com os problemas de compatibilidade entre navegadores causados pelo HTML/CSS?
-
Leandro,
Não tem mágica no desenvolvimento de Sw... Quem trabalha no Google, na Oracle, na Microsoft ou aonde quer que seja, enfrenta os mesmos problemas que nós (reles mortais). Eles também tem que se preocupar com questões como: Análise, design, persistência, utilização de padroes para melhorar o entendimento e manutenção do código etc...
Navegadores são softwares como qualquer outro... também tem padrões de projeto sendo utilizados em seu desenvolvimento e manutenção.
No caso da questão, foi apenas um exemplo expondo uma determinada necessidade de design e foi perguntado se os padrões de projeto citados poderiam ajudar nesse caso.
Não vejo problema algum.
-
(...) complementando o comentário do amigo Rodrigo:
Padrões de Projeto é uma solução GENERICA para problemas ESPECIFICOS.
no caso em questão, o problema especifico é a incompatibildiade dos navegadores (softwares) e a solução é a utilização dos padrões já conhecido Adapter e Facade. Perceba, que você poderia propor outra solução para este problema, o uso dos padrões é apenas sugestivo, pois este tipo de problema é bem conhecido na engenharia de software e atende bem às necessidades.
[]s
-
Todo mundo falou, mas não explicou o porque a questão está certa ou errada!
-
Façade -> Disponibiliza uma única interface para vários objetos, tornando o relacionamento entre eles mais simples. Define uma interface Superior.
Adapter -> Como o própio nome diz, esse padrão permite que objetos de interfaces distintas se comuniquem, ou seja, faz-se ou cria-se uma interface para a adaptação entre eles.
-
Falando como um desenvolvedor como que o Façade e o Adapter me ajudaria no desenvolvimento front-end, considerando a "incompatilibidade entre multiplos navegadores" (IE 6,7,8,9,10 e 11/EDGE, chrome, firefox, etc), considerando que a família MSIE não da suporte ao que é padrão na internet? Não faz o menor sentido essa pergunta para mim