[quote=alias][quote=javaflex]
Não conheço os trocentos Faces, mas os poucos que conheço mantem a usabilidade desktop, ai sim JSF ganha. Entendi que é perfeitamente possível fazer algo personalizado, mas me tira uma dúvida, supondo que junto a um designer temos que fazer uma página de consulta tipo essa http://globoesporte.globo.com/futebol/libertadores/, que nem é muito complexa, mas tem uma interface gráfica personalizada, qual seria a vantagem de usar solução component-based? Teríamos que parar pra criar um componente server pra abstrair a solução jquery personalizada ou deixar de lado o componente que é o motivador do JSF?[/quote]
Suponho que o que voce chama de “usabilidade desktop” sejam os componentes dos frameworks (Rich, Prime, etc) que se assemelham a componentes de desktop? Se for o que quis dizer, entendo mas respeitosamente discordo, os componentes desses frameworks são apenas CSS e Javascript (na view), eles se parecem com componentes “desktop” como poderiam se parecer com qualquer outra coisa.
Eu particularmente, como disse antes, vejo valor em tratar os elementos da página como “componentes” individuais, cada qual com o seu comportamento. De qualquer forma, esses componentes são apenas taglibs…apenas passo os parametros e elas fazem o que fazem, seja lá o que for.
Algo que gosto no JSF é como os dados manipulados nesses componentes são atrelados ao servidor, atribuindo assim ao componente uma responsabilidade no funcionamento da página; o componente, em si, é apenas Javascript. Qualquer um desses componentes dos SeiLaOQueFaces poderiam ser feitos sem JSF. Mas uma coisa “boa” que vejo na especificação é que a partir dela foram gerados muitos desses frameworks; poderia fazer cada um desses componentes apenas com Javascript/Jquery/Prototype/Scriptaculous, mas eles estão aí, prontos.
A interação com o usuário pertence ao client-side, e isso não muda, sendo JSF ou sei lá o que. Com JSF podemos a partir do servidor parametrizar o comportamento do componente, mas penso que não deve sair disso; uma vez que o componente foi renderizado, ele faz com Javascript o que o mandamos fazer com os dados que mandamos pra ele. E só. No exemplo da página que voce citou, voce quer/precisa parametrizar esse componente de interação com o usuário e o estado desse componente a partir do servidor? Ou quer só enviar dados pra ele ler no client-side e deixar o Javascript se virar pro que ele tem que fazer lá, e caso necessite, ele volta ao servidor? Acho ambas as abordagens válidas. Entao o uso ou nao de JSF ou qualquer outra coisa vai do que voce quer fazer.
No fim das contas, como disse outro colega nesse tópico, “O melhor na grande maioria das vezes é o que você conhece bem.”
Obrigado.
[/quote]
Valeu, boa explicação. No caso do globoesporte seria HTML, jquery e css puros, com ajax calls conforme o usuário for clicando em mais detalhes.