10 motivos para não usar JSF (opinião pessoal)

  1. Curva de aprendizado muito alta desnecessáriamente.
  2. Não traz grandes vantagens em relação a produtividade. (se duvida tente fazer um objeto simples como um select, depois me diga)
  3. Realizar validação é um caos. Existe excesso de classes e conversores nada intuitivos mesmo para um desenvolvedor J2ee experiente, quanto mais para um novato.
  4. Não é intuitivo para newbies em Java e também não é para veteranos.
  5. Documentação escassa e de dificil entendimento. Basta compará-lo com o Struts por exemplo.
  6. Implementações porcas como o ADF… :roll:
  7. Não tem integração com JSTL… :twisted: LOL Experimente fazer um painel dinamico com componentes html como radio ou selects e compare a mesma implementação com JSTL + Struts.
  8. Ao invés de simplificar, aumenta a complexidade.
  9. Trata tudo como se fosse um “swing”, pra quê eu preciso de um listener para meus componentes html?
  10. NÃO É DESENVOLVIDO PENSANDO NOS CONCEITOS WEB.

LOL, JSF sux a lot, espero que isto desapareça logo da face do J2ee e que venha logo o Struts 2. Mentawai também deve ser outra droga, todo framework que se preze usa xml.

Ainda bem que isso é a opinião pessoal de alguém que fala mal sem conhecer e ainda tem medo do novo, Aliás usar xml é uma prática que só tem a perder em relação a usar somente código java. Perde em clareza, perde em produtividade, perde até em performance…

há… ontem na facu, primeiro dia de 3º ano, ltp2 e o prof falo q vai ensinar jsf hahahahaha espero q essa opinião sua ai seja só sua msm… de boua! hahaha nao to afim de perder tempo aprendendo coisa q nao presta

Claro, claro. Voltemos a programar JSP/Servlets puro… :x
E falar que framework que se valha, tem que ter XML é no mínimo uma opinião cega. Mas devemos respeitar… fazer o que?

realmente o ensino da computação tá só piorando, ainda bem que nao sao todas faculdades.

A Mundo Java desse mês traz um artigo muito bom sobre JSF. Tem coisas que vc colocou acima, que lá estão dizendo ao contrário (JSLT por exemplo).
Mas o que seria da banana se todos gostassem de maçã ??? (risos)
Acho que cada um se adapta com algo, e dai, é só trabalhar. Também acho super válido opiniões divergentes como a sua pois, faz a gente correr atras de mais informações.

desenvolvido tudo em jsf e hibernate. dá uma olhada lá pra ver o resultado. tem desvantagens sim mas os 10 motivos mostraram q quem criou o tópico só fez um helloworld predisposto a falar mal

[quote=Rildlanster]www.dprf.gov.br

desenvolvido tudo em jsf e hibernate. dá uma olhada lá pra ver o resultado. tem desvantagens sim mas os 10 motivos mostraram q quem criou o tópico só fez um helloworld predisposto a falar mal[/quote]

Muito legal parabéns !!!

Gostei da paginade consulta de combos que é rapida (deve ser o ajax)

Se vc gosta tanto de XML assim para achar que o mentawai é uma droga só porque não usa xml, então ok. Acho que vc ficou viciado em Struts. Como vc pode preferir configurar usando XML ao invés de Java ?

Dá uma lida no que o Martin Fowler, que é uma pessoa um pouco respeitada na comunidade, tem a dizer sobre isso: http://forum.mentaframework.org/posts/list/159.page

Do resto concordo plenamente com vc sobre JSF. Lembre-se que o Struts é muito ruim e que o Struts2 não é Struts e sim um major refactoring do webwork.

Repare também que tudo isso que vc reclamou sobre o JSF não se aplica ao mentawai.

caramba, fui lendo suas 10 razoes e ate concordando com algumas… mas aí falar bem de struts e mal do mentawai foi triste…

enfim, só pra colocar meu comentario sobre isso:

minha maior birra com JSF é talvez parecida com o seu ponto 10: jsf parece uma gambiarra em cima da web. pra quem ja programava antes pra web, a nocao de componentes e estado parece mto bizarra.

concordo que quem vem da programacao desktop acaba se sentindo em casa, mas o caminho contrario é meio penoso…
eu comecei programando web, em php, e depois em java… meu pensamento ja eh request/response. fazer componentes e stateful me parece mto contraintuitivo num primeiro momento :slight_smile:

[quote=spark]
7. Não tem integração com JSTL… [/quote]

Qual especificações JSF e JSP você está usando?

Lembre-se, as versões anteriores JSF 1.2 e JSP 2.1 não eram compatíveis.

É meio contraditorio dizer isso e reclamar de JSF.

]['s

Eu não sei porque ainda me assusto com essas coisas…

A única coisa que eu posso dizer que concordo é em relacao a quem está acostumado a programar jsp + servlet e mete a mao o tempo todo no tal do request e response… depois que você entende que o paradigma é diferente, a produtividade aumenta sim. O resto do que foi dito é como já comentaram… ainda bem que você falou que é opinião tua… e pelo jeito opinião de quem no máximo fez um hello world.
E sobre validação, esperimente sobrescrever um metodozinho chamado equals :wink: você vai se surpreender :twisted:

É raro eu discordar em tantos pontos.

1. Curva de aprendizado muito alta desnecessáriamente.

Muito alta? Bom, depende do QI de quem está aprendendo. Se for comparar com o Struts por exemplo, é muito mais simples e fácil de aprender.

2. Não traz grandes vantagens em relação a produtividade. (se duvida tente fazer um objeto simples como um select, depois me diga)

Eu nunca fui tão produtivo no desenvolvimento web (sério!). E com relação a “um objeto simples como um select”, bom, com certeza você não fez o seu dever de casa e aprendeu direito o framework.

3. Realizar validação é um caos. Existe excesso de classes e conversores nada intuitivos mesmo para um desenvolvedor J2ee experiente, quanto mais para um novato.

Você acha complicado escrever algo como

 <h:inputText value="#{algo.algo}" required="true" id="idAlgo">
    <f:validateXXX/>
  </h:inputText>

???
Putz!.. E ainda reclama porque existem vários tipos de validadores. Ai…
ALiás, conhece a especificação 1.2?

4. Não é intuitivo para newbies em Java e também não é para veteranos.

Muito subjetivo

5. Documentação escassa e de dificil entendimento. Basta compará-lo com o Struts por exemplo.

Concordo.

6. Implementações porcas como o ADF…
ADF não é implementação do Faces. É apenas um conjunto de componentes.


7. Não tem integração com JSTL… LOL Experimente fazer um painel dinamico com componentes html como radio ou selects e compare a mesma implementação com JSTL + Struts.

Oh a ignorância sobre o assunto de novo…

8. Ao invés de simplificar, aumenta a complexidade.
Compare com o Struts por exemplo. É extremamente simples!

9. Trata tudo como se fosse um “swing”, pra quê eu preciso de um listener para meus componentes html?
O modelo de desenvolvimento de interfaces desktop é muito mais rico que o baseado em web.

10. NÃO É DESENVOLVIDO PENSANDO NOS CONCEITOS WEB.

Defina “conceitos web”.

Deixa o Urubatan ler esse tópico pra vc ver.
euuheuheuhe…
Tá parecendo que vc não conseguiu aprender jsf e tah querendo arrumar motivos pra sua derrota. :frowning:

Ontem fiz minha primeira aplicação usando JSF, com:

  • NetBeans 5.5 (muito legal principalmente pra quem usa VS.NET2003)
  • JPA (persistencia no MySql)

Muito, mas muito fácil ! (aplicação era simples para meu propósito inicial)

Cara da uma lida melhor sobre o JSF que acredito que vc se surpreendera.

Da uma lida na JavaMagazine desse mês (fev/07).

Abs

Continue desenvolvendo com EJB 2 + Struts e seja feliz então cara :slight_smile:

O dia que você resolver acordar vai perceber que Java cada vez mais caminha para utilizar cada vez menos XML :slight_smile:

Bom, antes de reclamar precisamos saber algumas informações:

  1. Quanto tempo você mecheu com JSF? 1 dia?!

  2. Qual a experiência que você tem na criação de componentes? 0 dias?

  3. Você possue a mente fechada para novas tecnologias?

  4. Você gosta de configurar XML?

  5. Se tu não gosta de inovações, agarre o struts e durma com ele todo dia, pq JSF é o futuro, queira você ou não.

Eu amo JSF, foi a melhor coisa que já inventaram, é MUITO simples colocar um select na página, é MUITO simples implantar AJAX, é MUITO simples criar um grande sistema utilizando componentes já prontos e é MUITO simples criar novos componentes.
** editado, última parte foi retirada por conter palavriados que não podem ser traduzidos em linguagem java.

É simples depois de 6 meses de estudos.

E componentes para web fazem pouco sentido. Dá um exemplo de componentes que vc reutiliza?

Web não é Swing !!!