Your SlideShare is downloading. ×
Apache Wicket derruba o padrão JSF
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Apache Wicket derruba o padrão JSF

4,115

Published on

Apresentação mostra o Framework Web que coloca o padrão JSF no chão. …

Apresentação mostra o Framework Web que coloca o padrão JSF no chão.

Wicket vs JSF
http://youtu.be/uHD5xLefTyg

Published in: Technology
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
4,115
On Slideshare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
1
Comments
0
Likes
3
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • Quem conhece?
    O que usam? Struts, JSF, outros?
    Contar da experiencia pessoal
    E dizer q era uma batalha diária contra clones... erros q se repetiam constantemente
    Campo nao encontrado, propriedade nao existe, NullPointerException
  • Maioria dos frameworks exigem código HTML misturado com outras tags
    Muitos oferecem uma série de taglibs, que são outros artefatos a serem estudados além da própria API e arquitetura do framework
    Strings são utilizadas para referenciar campos e métodos, causa dos problemas diários. Apenas IDEs avançadas com suporte, auxiliam parcialmente
    Quando precisa encontrar erro, tem que peneirar
  • Plataforma Java tem Grails, JRuby, GWT.
    Estes não estão na batalha.
    A briga está no uso da linguagem Java pra desenvolver pra Web
    Wicket é o Ewok do filme Star Wars
    E chamo de Lado Negro da força o padrão JCP
  • Wicket é baseado em componentes
    Diferencia no dia-a-dia e no processo de construção
    Criador Jonathan Locke
    Motivado por simplificar o processo,
    separar as responsabilidades (programador e designer)
    utilizar orientação a objetos de forma inteligente
  • Wicket Stuff é um repositório de componentes criados pela comunidade que não amadureceram o suficiente para ingressar no Wicket Extensions, ou utilizam códigos com licensa incompatível com a Apache License
  • Começar quickstart
    Criar um link que incrementa contador
    Mudar para um Form
    Pedir à platéia alguma sugestão
  • Organização dos arquivos é por convenção, mas pode ser alterada pelo programador
  • Wicket exige programadores proficientes em Orientação a Objetos na plataforma Java.
    Muitos frameworks exigem pouco conhecimento. Programadores fazem o feijão-com-arroz da linguagem Java.
    Inner classes não são comuns na maioria dos frameworks, mas fazem parte da linguagem e é recomendado no desenvolvimento com Wicket por agilizar a construção de páginas e componentes
  • Os 6 principais conceitos da arquitetura do Wicket
  • A briga do Wicket contra os clones
    Do padrão JCP
  • [2010-10-26] JSF Expert Group Disbanded With No Successor JSR
  • JSF is part of full stack application server, but gives nothing. You have a component model, and each vendor will provide the runtime API. But you will need a library like RichFaces, ICEFaces, PrimeFaces, MyFaces, etc.
    Take a good look. You will realize that, once you start using JSF, you are not standard anymore, you are bound to the JSF library vendor. Programming models are different, tags have different name. Switching/mixing JSF library is very hard or impossible. So what good is the JSF standard for? Why is RichFaces for JSF 2.0 taking so long and how many people are developing it? Will it be continued? JSF surely, but RichFaces, ICEFaces? Who can assure that?
  • Plataforma Java tem Grails, JRuby, GWT. A briga está no uso da linguagem Java pra desenvolver pra Web
    Wicket é o Ewok do filme Star Wars
    E chamo de Lado Negro da força o padrão JCP
  • <number>
  • Transcript

    • 1. XMLs TagLibs String Oriented Programming SOP
    • 2. Apache Wicket Framework Web Component-based para salvar o seu projeto e as mentes da sua equipe
    • 3. Apache Wicket ● Simples ● POJOs ala Swing ● Tudo é componente (páginas, painéis, botões, links) ● Sem XML ● Mínimo de Dependência de Ferramentas ● Binding simples com HTML
    • 4. Apache Wicket ● Completo ● Console de debug p/ Ajax ● Cuida do botão “Voltar” ● Fortemente tipado / Fácil achar erros na compilação
    • 5. Apache Wicket ● Não Intrusivo ● HTML limpo; livre de semânticas de programação ● Compatível com qualquer editor WYSIWYG – Web Designers – Fácil corrigir se fizerem merda besteira
    • 6. Apache Wicket ● Eficiência e Escalável ● Cluster por Sticky Sessions ● Mas também permite por replicação de Session
    • 7. Java + HTML <span wicket:id=”msg”>msg de sistema</span> + new Label(“msg”, “We Develop”); = <span>We Develop</span>
    • 8. Módulos ● Core ● Extensions ● Dependency Injection (Spring / Guice) ● Date/Time ● Auth-roles ● Stuff Gmap2 gmap = new Gmap2(“map”); page.add(gmap); <div wicket:id=”map”> Google Maps </div>
    • 9. Interessante ser, o Wicket parece Interessante ser, o Wicket parece Código Padawan deve mostrar
    • 10. Convenção ● Arquivos HTML ● Juntos às classes correspondentes * ● wdev.wicket.Pagina ● src/wdev/wicket/Pagina.java ● src/wdev/wicket/Pagina.html * ResourceLocator: permite mudar modelo de localização dos arquivos
    • 11. Orientado a ObjetosOrientado a Objetos Inner ClassesInner Classes AnonymousAnonymous StaticStatic Non-StaticNon-Static
    • 12. Conceitos ● Aplicação ● Sessão ● Componentes ● Models ● Behaviours ● Converters
    • 13. Hands on!
    • 14. AJAXAJAX
    • 15. Ajax ● Suporte nativo ● Suporte a Fallback ● JavaScripts prontos/embutidos ● Atualização incremental da página ● Inclusão dinâmica de CSS e JavaScript ● HeaderContributor ● Console para debug
    • 16. Hands on!
    • 17. Padrão JCPPadrão JCP Wicket vs ...
    • 18. JCP define somente arquitetura padrão JCP define somente arquitetura padrão Não um produto final Não um produto final resultado disso … ?resultado disso … ?
    • 19. Implementações ... vááááááárias implementações ICEFaces RichFaces Mojarra OpenFaces Oracle ADF Smiles MyFaces PrimeFaces PrettyFaces DojoFaces
    • 20. Padrão JCP ● Problemas ● Incompatibilidade entre componentes de diferentes vendors ● Componentes interessantes não são padronizados ● Tem que estudar diversos componentes (de diferentes vendors) ● Documentação descentralizada ● Comunidade fragmentada ● Designers e programadores se misturam ● Protótipo não fica funcional ● ** Performance
    • 21. Side-by-side <!-- HTML --> <html> <body> <form> <span>Some name</span> <input type="text" /> <input type="submit" /> </form> </body> </html>
    • 22. Side-by-side <!-- JSF --> <html> <body> <h:form> <h:outputText value="#{bean.name}" disabled="#{empty bean}" /> <h:inputText value="#{bean.property}" /> <h:commandButton value="OK" action="#{bean.method}" /> </h:form> </body> </html>
    • 23. Side-by-side <!-- FACELETS --> <html> <body> <form jsfc="h:form"> <span jsfc="h:outputText" value="#{bean.name}" disabled="#{empty bean}" /> <input type="text" jsfc="h:inputText" value="#{bean.property}" /> <input type="submit" jsfc="h:commandButton" value="OK" action="#{bean.doSomething}" /> </form> </body> </html>
    • 24. Side-by-side <!-- WICKET --> <html> <body> <form wicket:id="form"> <span wicket:id="name">Some name</span> <input type="text" wicket:id="input" /> <input type="submit" /> </form> </body> </html>
    • 25. Não se sinta ofendido
    • 26. Padrão JCP ● Vantagens ● Ser um padrão ● Longa vida – Cursos e treinamentos com baixa manutenção – Livros – Conhecimento “geral” ● Fornecedores ● Empresas com rotatividade de funcionários
    • 27. Mais informações ● Wicket ● wicket.apache.org ● Wicket em Português ● groups.google.com/group/wicket-ptbr ● Peter Thomas (@ptrthomas) ● Blog: ptrthomas.wordpress.com ● Criador do JTrac
    • 28. Derruba o padrão JCP Apache Wicket
    • 29. Obrigado Bruno Borges bruno@wdev.com.br brunoborges.com.br @brunoborges
    • 30. We Develop! Inovação Processo Ágil Tecnologia Internet Computação Avançada Rede Sociais Cloud Computing www.wdev.com.br Mobilidade

    ×