Se ha denunciado esta presentación.
Utilizamos tu perfil de LinkedIn y tus datos de actividad para personalizar los anuncios y mostrarte publicidad más relevante. Puedes cambiar tus preferencias de publicidad en cualquier momento.
Comparing Java Web
          Frameworks
JSF, Spring MVC, Stripes, Struts 2, Tapestry and Wicket

                     Matt...
Today's Agenda

Introductions
Pros and Cons
Smackdown
Conclusion
Q and A




                        © 2007 Raible Designs...
Introductions
Your experience with webapps?
Your experience with Java EE?
What do you want to get from this session?
Exper...
Who is Matt Raible?
Power user of Java Open Source Frameworks
Author of Spring Live and Pro JSP 2.0
Founder of AppFuse and...
© 2007 Raible Designs, Inc.
My Experience




                © 2007 Raible Designs, Inc.
Pros and Cons




                © 2007 Raible Designs, Inc.
JSF
Pros:
   Java EE Standard - lots of demand and jobs
   Fast and easy to develop with initially
   Lots of component li...
Spring MVC
Pros:
   Lifecyle for overriding binding, validation, etc.
   Integrates with many view options seamlessly:
   ...
Stripes
Pros:
   No XML - Convention over Configuration
   Good documentation (easy to learn)
   Enthusiastic community
Con...
Struts 2
Pros:
   Simple architecture - easy to extend
   Tag Library is easy to customize with
   FreeMarker or Velocity
...
Tapestry
Pros:
   Very productive once you learn it
   Templates are HTML - great for designers
   Lots of innovation betw...
Wicket
Pros:
   Great for Java developers, not web developers
   Tight binding between pages and views
   Active community...
The Smackdown



                © 2007 Raible Designs, Inc.
Evaluation Criteria
Ajax Support: Is it built-in and easy to use?
Bookmark-ability: Can users bookmark pages and
return to...
Evaluation Criteria, cont.
 Post and Redirect: How does the framework handle
 the duplicate post problem?
 Internationaliz...
Evaluation Criteria, cont.

 Tools: Is there good tool (particularly IDE) support
 for the framework?
 Marketability of Sk...
Ajax Support
Is Ajax support built-in and easy to use?
    JSF: No Ajax support, use ICEfaces and Ajax4JSF
    Stripes: No...
Bookmarking and URLs
JSF does a POST for everything - URLs not even
considered
Stripes uses conventions, but you can overr...
Validation
JSF has ugly default messages, but easiest to
configure
Spring MVC allows you to use Commons Validator -
a matur...
Testability
Spring and Struts 2 allow easy testing with mocks
(e.g. EasyMock, jMock, Spring Mocks)
Tapestry appears difficu...
Post and Redirect
The duplicate-post problem: redirect after POST
Is there support for allowing success messages to
live t...
Internationalization
JSTL’s <fmt:message> tag makes it easy
No standard for getting i18n messages in controller
classes
St...
Page Decoration
Tiles Experience: used since it first came out
SiteMesh is much easier to setup and use
Tiles can be used i...
Marketability of Skills
Struts 1 is still in high-demand and widely-used
Spring is getting more press, but mostly due to t...
Pretty Graphs




                © 2007 Raible Designs, Inc.
Dice.com Job Count
                                                      Struts 2
800
                                    ...
Dice Job with Struts 1.x
                                                           Struts 2
3,000
                       ...
Job Trends




             © 2007 Raible Designs, Inc.
Job Trends vs. Struts




                   © 2007 Raible Designs, Inc.
Job Trends vs. J2EE




                  © 2007 Raible Designs, Inc.
Job Trends vs. Java




                  © 2007 Raible Designs, Inc.
Employer Search on Monster.com
 Resumes posted in last 2 weeks
      600                                         Struts 2
...
Mailing List Traffic
  Struts

 Stripes

MyFaces

Tapestry

 Wicket

             0                 500                1,0...
Releases in 2007

10.0                                  Struts 2
                                      Spring MVC
        ...
Tools Available
15.00                                Struts 2
                                     Spring MVC
            ...
Books on Amazon

10.0
                      10                     Struts 2
                                             S...
How do you choose?




                © 2007 Raible Designs, Inc.
Eliminate, Don’t Include



                    © 2007 Raible Designs, Inc.
© 2007 Raible Designs, Inc.
6 Important Factors
What type of Application are you building?
Ease of Development / Is full-stack an option?
Project Comm...
Don’t believe the Hype
Don’t believe blogs and articles
Try it yourself
Believe developers, not evangelists
Believe develo...
Best Tool for the Job
Frameworks have sweet spots - is your
application one of them?
Pick 2-3 frameworks for your type of ...
After Choosing...
Document the reasons for your decision
Allow developers to challenge it
Allow your prototype to be writt...
What do I think?




               © 2007 Raible Designs, Inc.
© 2007 Raible Designs, Inc.
Conclusion
The future is bright because of all the competition
Developers should know more than one web
framework
You shou...
Questions?
    matt@raibledesigns.com
    http://raibledesigns.com


         Download presentation from:
http://raibledes...
Próxima SlideShare
Cargando en…5
×

Comparing JSF, Spring MVC, Stripes, Struts 2, Tapestry and Wicket

123.228 visualizaciones

Publicado el

One of the most difficult things to do (in Java web development) today is pick which web framework to use when development an application. The Apache Software foundation hosts most of the popular Java web frameworks: Struts, MyFaces, Tapestry and Wicket. This session will compare these different web frameworks, as well as Spring MVC and Stripes. It will briefly explain how each works and the strengths and weaknesses of each. Tips, tricks and gotcha's will be plentiful. Lastly, it will provide attendees with a sample application that utilizes all 6 frameworks, so they can compare line-by-line how the frameworks are different. This sample application will include the following features: sortable/pageable list, client and server-side validation, success and error messages as well as some Ajax functionality. The frameworks will be rated on how easy they make it to implement these features.

Publicado en: Tecnología, Educación
  • DOWNLOAD THE BOOK INTO AVAILABLE FORMAT (New Update) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { https://redirect.is/fyxsb0u } ......................................................................................................................... Download Full EPUB Ebook here { https://redirect.is/fyxsb0u } ......................................................................................................................... Download Full doc Ebook here { https://redirect.is/fyxsb0u } ......................................................................................................................... Download PDF EBOOK here { https://redirect.is/fyxsb0u } ......................................................................................................................... Download EPUB Ebook here { https://redirect.is/fyxsb0u } ......................................................................................................................... Download doc Ebook here { https://redirect.is/fyxsb0u } ......................................................................................................................... ......................................................................................................................... ................................................................................................................................... eBook is an electronic version of a traditional print book THE can be read by using a personal computer or by using an eBook reader. (An eBook reader can be a software application for use on a computer such as Microsoft's free Reader application, or a book-sized computer THE is used solely as a reading device such as Nuvomedia's Rocket eBook.) Users can purchase an eBook on diskette or CD, but the most popular method of getting an eBook is to purchase a downloadable file of the eBook (or other reading material) from a Web site (such as Barnes and Noble) to be read from the user's computer or reading device. Generally, an eBook can be downloaded in five minutes or less ......................................................................................................................... .............. Browse by Genre Available eBOOK .............................................................................................................................. Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, CookBOOK, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult, Crime, EBOOK, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, ......................................................................................................................... ......................................................................................................................... .....BEST SELLER FOR EBOOK RECOMMEND............................................................. ......................................................................................................................... Blowout: Corrupted Democracy, Rogue State Russia, and the Richest, Most Destructive Industry on Earth,-- The Ride of a Lifetime: Lessons Learned from 15 Years as CEO of the Walt Disney Company,-- Call Sign Chaos: Learning to Lead,-- StrengthsFinder 2.0,-- Stillness Is the Key,-- She Said: Breaking the Sexual Harassment Story THE Helped Ignite a Movement,-- Atomic Habits: An Easy &amp; Proven Way to Build Good Habits &amp; Break Bad Ones,-- Everything Is Figureoutable,-- What It Takes: Lessons in the Pursuit of Excellence,-- Rich Dad Poor Dad: What the Rich Teach Their Kids About Money THE the Poor and Middle Class Do Not!,-- The Total Money Makeover: Classic Edition: A Proven Plan for Financial Fitness,-- Shut Up and Listen!: Hard Business Truths THE Will Help You Succeed, ......................................................................................................................... .........................................................................................................................
       Responder 
    ¿Estás seguro?    No
    Tu mensaje aparecerá aquí
  • DOWNLOAD THE BOOK INTO AVAILABLE FORMAT (New Update) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { https://redirect.is/fyxsb0u } ......................................................................................................................... Download Full EPUB Ebook here { https://redirect.is/fyxsb0u } ......................................................................................................................... Download Full doc Ebook here { https://redirect.is/fyxsb0u } ......................................................................................................................... Download PDF EBOOK here { https://redirect.is/fyxsb0u } ......................................................................................................................... Download EPUB Ebook here { https://redirect.is/fyxsb0u } ......................................................................................................................... Download doc Ebook here { https://redirect.is/fyxsb0u } ......................................................................................................................... ......................................................................................................................... ................................................................................................................................... eBook is an electronic version of a traditional print book THE can be read by using a personal computer or by using an eBook reader. (An eBook reader can be a software application for use on a computer such as Microsoft's free Reader application, or a book-sized computer THE is used solely as a reading device such as Nuvomedia's Rocket eBook.) Users can purchase an eBook on diskette or CD, but the most popular method of getting an eBook is to purchase a downloadable file of the eBook (or other reading material) from a Web site (such as Barnes and Noble) to be read from the user's computer or reading device. Generally, an eBook can be downloaded in five minutes or less ......................................................................................................................... .............. Browse by Genre Available eBOOK .............................................................................................................................. Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, CookBOOK, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult, Crime, EBOOK, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, ......................................................................................................................... ......................................................................................................................... .....BEST SELLER FOR EBOOK RECOMMEND............................................................. ......................................................................................................................... Blowout: Corrupted Democracy, Rogue State Russia, and the Richest, Most Destructive Industry on Earth,-- The Ride of a Lifetime: Lessons Learned from 15 Years as CEO of the Walt Disney Company,-- Call Sign Chaos: Learning to Lead,-- StrengthsFinder 2.0,-- Stillness Is the Key,-- She Said: Breaking the Sexual Harassment Story THE Helped Ignite a Movement,-- Atomic Habits: An Easy &amp; Proven Way to Build Good Habits &amp; Break Bad Ones,-- Everything Is Figureoutable,-- What It Takes: Lessons in the Pursuit of Excellence,-- Rich Dad Poor Dad: What the Rich Teach Their Kids About Money THE the Poor and Middle Class Do Not!,-- The Total Money Makeover: Classic Edition: A Proven Plan for Financial Fitness,-- Shut Up and Listen!: Hard Business Truths THE Will Help You Succeed, ......................................................................................................................... .........................................................................................................................
       Responder 
    ¿Estás seguro?    No
    Tu mensaje aparecerá aquí
  • You can ask here for a help. They helped me a lot an i`m highly satisfied with quality of work done. I can promise you 100% un-plagiarized text and good experts there. Use with pleasure! ⇒ www.HelpWriting.net ⇐
       Responder 
    ¿Estás seguro?    No
    Tu mensaje aparecerá aquí
  • Puma Toto merupakan agen togel online terpercaya di seluruh Nusantara. Puma Toto memiliki 8juta member yang bermain bersama dengan Puma Toto dan telah bergerak di bidang bandar togel online terpercaya lebih dari 10tahun. Puma Toto juga Prediksi Togel Akurat dan juga memiliki Prediksi Angka Jitu yang telah bergerak lebih dari 10 tahun, dan akan membantu Anda untuk mendapatkan kemenangan dalam taruhan togel online Bagi Anda yang suka bermain taruhan togel online dan dengan cara main togel online yang tepat untuk mendapatkan kemenangan yang besar, Anda bisa untuk bergabung dengan Puma Toto. Puma Toto juga memiliki Keuntungan bagi Anda yang bergabung, seperti: Bonus New Member 10% Bonus Harian 2% max 10rb / hari Bonus Referral 2% (Seumur Hidup) Deposit Termurah, hanya 10.000 rupiah Minimal taruhan 100perak Diskon dan Hadiah yang menarik dari Puma Toto: Discount dan Hadiah 2D Puma Toto : 18% x 79 Discount dan Hadiah 3D Puma Toto : 46% x 510 Discount dan Hadiah 4D Puma Toto : 58% x 3.900 Puma Toto bekerjasama dengan 25 Negara yang mengeluarkan permainan Togel Online, Yakni: 1. Togel Singapore / Togel SGP dari Singapura 2. Togel Hongkong / Togel HK dari Hongkong 3. Togel Sydney dari Australia 4. Togel Tibetian4D dari Tibet 5. Togel Mongolia4D dari Mongolia 6. Togel Tokyo Mega dari Jepang 7. Togel Korea4D dariKorea 8. Togel Penang4D dari Malaysia 9. Togel Swiss4D dari Swiss 10. Togel Vietnam4D dari Vietnam 11. Togel Bangkok4D dari Thailand 12. Togel Germany4D dari Jerman 13. Togel UK4D dari Inggris 14. Togel Spain4d dari Spanyol 15. Togel Mexico4D dari Mexico 16. Togel Brazilia4D dari Brazil 17. Togel Psco dari Filipina 18. Togel Bulleyes dari New Zealand 19. Togel Greece dari Yunani 20. Togel Texas Morning dari Amerika 21. Togel Oregon 1 dari Amerika 22. Togel Oregon 2 dari Amerika 23. Togel Oregon 3 dari Amerika 24. Togel Carolina 1 dari Amerika 25. Togel Virginia Night dari Amerika Daftarkan diri Anda bersama Puma Toto.Bandar Togel Online Terpercaya dengan minimal deposit hanya 10.000 rupiah dan dengan minimal betting hanya 100 perak dan proses deposit tercepat maximal 1 menit dan proses withdraw tercepat hanya 2menit maximal. Puma Toto akan membantu kemenangan Anda dalam bermain permainan togel online, tentunya ketika Anda bergabung dengan Bandar Togel Online Terpercaya Dan dengan cara main togel online terbaik. Dan dengan kualitas pelayanan bintang lima dari Puma Toto untuk kalian para pecinta permainan togel online. Puma Toto juga memiliki Prediksi Angka Jitu, dan Prediksi Togel Akurat yang dapat membantu kemenangan Anda dalam bermain taruhan togel online.
       Responder 
    ¿Estás seguro?    No
    Tu mensaje aparecerá aquí
  • Puma Toto merupakan agen togel online terpercaya di seluruh Nusantara. Puma Toto memiliki 8juta member yang bermain bersama dengan Puma Toto dan telah bergerak di bidang bandar togel online terpercaya lebih dari 10tahun. Puma Toto juga Prediksi Togel Akurat dan juga memiliki Prediksi Angka Jitu yang telah bergerak lebih dari 10 tahun, dan akan membantu Anda untuk mendapatkan kemenangan dalam taruhan togel online Bagi Anda yang suka bermain taruhan togel online dan dengan cara main togel online yang tepat untuk mendapatkan kemenangan yang besar, Anda bisa untuk bergabung dengan Puma Toto. Puma Toto juga memiliki Keuntungan bagi Anda yang bergabung, seperti: Bonus New Member 10% Bonus Harian 2% max 10rb / hari Bonus Referral 2% (Seumur Hidup) Deposit Termurah, hanya 10.000 rupiah Minimal taruhan 100perak Diskon dan Hadiah yang menarik dari Puma Toto: Discount dan Hadiah 2D Puma Toto : 18% x 79 Discount dan Hadiah 3D Puma Toto : 46% x 510 Discount dan Hadiah 4D Puma Toto : 58% x 3.900 Puma Toto bekerjasama dengan 25 Negara yang mengeluarkan permainan Togel Online, Yakni: 1. Togel Singapore / Togel SGP dari Singapura 2. Togel Hongkong / Togel HK dari Hongkong 3. Togel Sydney dari Australia 4. Togel Tibetian4D dari Tibet 5. Togel Mongolia4D dari Mongolia 6. Togel Tokyo Mega dari Jepang 7. Togel Korea4D dariKorea 8. Togel Penang4D dari Malaysia 9. Togel Swiss4D dari Swiss 10. Togel Vietnam4D dari Vietnam 11. Togel Bangkok4D dari Thailand 12. Togel Germany4D dari Jerman 13. Togel UK4D dari Inggris 14. Togel Spain4d dari Spanyol 15. Togel Mexico4D dari Mexico 16. Togel Brazilia4D dari Brazil 17. Togel Psco dari Filipina 18. Togel Bulleyes dari New Zealand 19. Togel Greece dari Yunani 20. Togel Texas Morning dari Amerika 21. Togel Oregon 1 dari Amerika 22. Togel Oregon 2 dari Amerika 23. Togel Oregon 3 dari Amerika 24. Togel Carolina 1 dari Amerika 25. Togel Virginia Night dari Amerika Daftarkan diri Anda bersama Puma Toto.Bandar Togel Online Terpercaya dengan minimal deposit hanya 10.000 rupiah dan dengan minimal betting hanya 100 perak dan proses deposit tercepat maximal 1 menit dan proses withdraw tercepat hanya 2menit maximal. Puma Toto akan membantu kemenangan Anda dalam bermain permainan togel online, tentunya ketika Anda bergabung dengan Bandar Togel Online Terpercaya Dan dengan cara main togel online terbaik. Dan dengan kualitas pelayanan bintang lima dari Puma Toto untuk kalian para pecinta permainan togel online. Puma Toto juga memiliki Prediksi Angka Jitu, dan Prediksi Togel Akurat yang dapat membantu kemenangan Anda dalam bermain taruhan togel online.
       Responder 
    ¿Estás seguro?    No
    Tu mensaje aparecerá aquí

Comparing JSF, Spring MVC, Stripes, Struts 2, Tapestry and Wicket

  1. 1. Comparing Java Web Frameworks JSF, Spring MVC, Stripes, Struts 2, Tapestry and Wicket Matt Raible matt@raibledesigns.com http://raibledesigns.com © 2007 Raible Designs, Inc.
  2. 2. Today's Agenda Introductions Pros and Cons Smackdown Conclusion Q and A © 2007 Raible Designs, Inc.
  3. 3. Introductions Your experience with webapps? Your experience with Java EE? What do you want to get from this session? Experience with Maven, Tomcat, Hibernate, Spring? Web Framework Experience: Spring MVC, Struts 2, Stripes, JSF, Tapestry, Wicket © 2007 Raible Designs, Inc.
  4. 4. Who is Matt Raible? Power user of Java Open Source Frameworks Author of Spring Live and Pro JSP 2.0 Founder of AppFuse and AppFuse Light Member of Java EE 5, JSF 1.2 and Bean Validation Expert Groups Committer on Apache Projects: Roller and Struts Java Blogger since 2002 © 2007 Raible Designs, Inc.
  5. 5. © 2007 Raible Designs, Inc.
  6. 6. My Experience © 2007 Raible Designs, Inc.
  7. 7. Pros and Cons © 2007 Raible Designs, Inc.
  8. 8. JSF Pros: Java EE Standard - lots of demand and jobs Fast and easy to develop with initially Lots of component libraries Cons: Tag soup for JSPs Doesn't play well with REST or Security No single source for implementation © 2007 Raible Designs, Inc.
  9. 9. Spring MVC Pros: Lifecyle for overriding binding, validation, etc. Integrates with many view options seamlessly: JSP/JSTL, Tiles, Velocity, FreeMarker, Excel, PDF Inversion of Control makes it easy to test Cons: Configuration intensive - lots of XML Almost too flexible - no common parent Controller No built-in Ajax support © 2007 Raible Designs, Inc.
  10. 10. Stripes Pros: No XML - Convention over Configuration Good documentation (easy to learn) Enthusiastic community Cons: Small Community Not as actively developed as other projects Hard-coded URLs in ActionBeans © 2007 Raible Designs, Inc.
  11. 11. Struts 2 Pros: Simple architecture - easy to extend Tag Library is easy to customize with FreeMarker or Velocity Controller-based or page-based navigation Cons: Documentation is poorly organized No feedback for missing properties or invalid OGNL expressions Googling results in Struts 1.x documentation © 2007 Raible Designs, Inc.
  12. 12. Tapestry Pros: Very productive once you learn it Templates are HTML - great for designers Lots of innovation between releases Cons: Documentation very conceptual, rather than pragmatic Steep learning curve Long release cycles - major upgrades every year © 2007 Raible Designs, Inc.
  13. 13. Wicket Pros: Great for Java developers, not web developers Tight binding between pages and views Active community - support from the creators Cons: HTML templates live next to Java code Need to have a good grasp of OO The Wicket Way - everything done in Java © 2007 Raible Designs, Inc.
  14. 14. The Smackdown © 2007 Raible Designs, Inc.
  15. 15. Evaluation Criteria Ajax Support: Is it built-in and easy to use? Bookmark-ability: Can users bookmark pages and return to them easily? Validation: How easy is it to use and does it support client-side (JavaScript) validation? Testability: How easy is it to test Controllers out of container? © 2007 Raible Designs, Inc.
  16. 16. Evaluation Criteria, cont. Post and Redirect: How does the framework handle the duplicate post problem? Internationalization: How is i18n supported and how easy is it to get messages in Controllers? Page Decoration: What sort of page decoration/ composition mechanisms does the framework support? Community and Support: Can you get questions answered quickly (and respectfully)? © 2007 Raible Designs, Inc.
  17. 17. Evaluation Criteria, cont. Tools: Is there good tool (particularly IDE) support for the framework? Marketability of Skills: If you learn the framework, will it help you get a job? Job Count: What is the demand for framework skills on dice.com and indeed.com? © 2007 Raible Designs, Inc.
  18. 18. Ajax Support Is Ajax support built-in and easy to use? JSF: No Ajax support, use ICEfaces and Ajax4JSF Stripes: No libraries, supports streaming results Struts 2: Dojo built-in, plugins for GWT, JSON Spring MVC: No libraries, use DWR & Spring MVC Extras Tapestry: Dojo built-in in 4.1 Wicket: Dojo and Script.aculo.us (Wicket Stuff) © 2007 Raible Designs, Inc.
  19. 19. Bookmarking and URLs JSF does a POST for everything - URLs not even considered Stripes uses conventions, but you can override Struts 2 has namespaces - makes it easy Spring MVC allows full URL control Tapestry still has somewhat ugly URLs Wicket allows pages/URLs to be mounted © 2007 Raible Designs, Inc.
  20. 20. Validation JSF has ugly default messages, but easiest to configure Spring MVC allows you to use Commons Validator - a mature solution Struts 2 uses OGNL for powerful expressions - client-side only works when specifying rules on Actions Tapestry has very robust validation - good messages without need to customize Stripes and Wicket do validation in Java - no client- side © 2007 Raible Designs, Inc.
  21. 21. Testability Spring and Struts 2 allow easy testing with mocks (e.g. EasyMock, jMock, Spring Mocks) Tapestry appears difficult to test because page classes are abstract, Creator class simplifies JSF page classes can be easily tested and actually look a lot like Struts 2 actions Wicket has WicketTester, a powerful solution Stripes has Servlet API Mocks and MockRoundtrip © 2007 Raible Designs, Inc.
  22. 22. Post and Redirect The duplicate-post problem: redirect after POST Is there support for allowing success messages to live through a redirect? Spring MVC allows you to add parameters to a redirect Stripes, Tapestry and Wicket all have quot;flashquot; support Struts 2 requires a custom solution JSF requires a custom solution, i18n messages difficult to get in page beans © 2007 Raible Designs, Inc.
  23. 23. Internationalization JSTL’s <fmt:message> tag makes it easy No standard for getting i18n messages in controller classes Stripes, Spring MVC and JSF use a single ResourceBundle per locale Struts 2, Tapestry and Wicket advocate separate files for each page/action JSF requires resource bundle to be declared on each page Tapestry's <span key=quot;key.namequot;> is awesome © 2007 Raible Designs, Inc.
  24. 24. Page Decoration Tiles Experience: used since it first came out SiteMesh is much easier to setup and use Tiles can be used in Struts 2, Spring and JSF Requires configuration for each page SiteMesh can be used with all frameworks Requires very little maintenance after setup SiteMesh not supported or recommended for use with JSF, Tapestry or Wicket © 2007 Raible Designs, Inc.
  25. 25. Marketability of Skills Struts 1 is still in high-demand and widely-used Spring is getting more press, but mostly due to the framework’s other features JSF is becoming popular; awful with JSP Struts 2 is gaining ground, but very scarce on job boards Tapestry has increased in popularity in last couple years Wicket and Stripes are virtually unknown © 2007 Raible Designs, Inc.
  26. 26. Pretty Graphs © 2007 Raible Designs, Inc.
  27. 27. Dice.com Job Count Struts 2 800 Spring MVC 748 Stripes JSF 600 Wicket Tapestry 400 200 98 77 69 0 20 15 November 14, 2007 © 2007 Raible Designs, Inc.
  28. 28. Dice Job with Struts 1.x Struts 2 3,000 Spring MVC Stripes JSF 2,250 Wicket 2,249 Tapestry Struts 1 1,500 750 748 0 77 98 20 69 15 November 14, 2007 © 2007 Raible Designs, Inc.
  29. 29. Job Trends © 2007 Raible Designs, Inc.
  30. 30. Job Trends vs. Struts © 2007 Raible Designs, Inc.
  31. 31. Job Trends vs. J2EE © 2007 Raible Designs, Inc.
  32. 32. Job Trends vs. Java © 2007 Raible Designs, Inc.
  33. 33. Employer Search on Monster.com Resumes posted in last 2 weeks 600 Struts 2 592 Spring MVC 480 Stripes Wicket 360 JSF Tapestry 240 120 75 84 49 0 11 12 © 2007 Raible Designs, Inc.
  34. 34. Mailing List Traffic Struts Stripes MyFaces Tapestry Wicket 0 500 1,000 1,500 2,000 * Spring MVC is not listed here because they have a forum instead of a mailing list and I couldn’t figure out a way to count the number of messages for each month. © 2007 Raible Designs, Inc.
  35. 35. Releases in 2007 10.0 Struts 2 Spring MVC Stripes 7.5 MyFaces Wicket 6 Tapestry 5.0 4 2.5 2 2 2 1 0 © 2007 Raible Designs, Inc.
  36. 36. Tools Available 15.00 Struts 2 Spring MVC Stripes 11.25 12 Wicket JSF Tapestry 7.50 7 3.75 4 3 3 0 May 2007 © 2007 Raible Designs, Inc.
  37. 37. Books on Amazon 10.0 10 Struts 2 Spring MVC Stripes 7.5 JSF 7 Wicket Tapestry 5.0 4 2.5 3 2 0 October 2007 © 2007 Raible Designs, Inc.
  38. 38. How do you choose? © 2007 Raible Designs, Inc.
  39. 39. Eliminate, Don’t Include © 2007 Raible Designs, Inc.
  40. 40. © 2007 Raible Designs, Inc.
  41. 41. 6 Important Factors What type of Application are you building? Ease of Development / Is full-stack an option? Project Community Project Future and Roadmap Maintenance Technical Features © 2007 Raible Designs, Inc.
  42. 42. Don’t believe the Hype Don’t believe blogs and articles Try it yourself Believe developers, not evangelists Believe developers that are experienced with the framework and have used it in production Beware of corporate interests - they can twist marketing Books are a good sign © 2007 Raible Designs, Inc.
  43. 43. Best Tool for the Job Frameworks have sweet spots - is your application one of them? Pick 2-3 frameworks for your type of application... ... and prototype! If prototyping is painful, switch Make sure you prototype more than one and do a presentation comparing the pros and cons of each © 2007 Raible Designs, Inc.
  44. 44. After Choosing... Document the reasons for your decision Allow developers to challenge it Allow your prototype to be written with other frameworks Don’t be afraid to try new frameworks Don’t be afraid to use old frameworks Don’t be afraid to keep your existing framework © 2007 Raible Designs, Inc.
  45. 45. What do I think? © 2007 Raible Designs, Inc.
  46. 46. © 2007 Raible Designs, Inc.
  47. 47. Conclusion The future is bright because of all the competition Developers should know more than one web framework You should try a framework before dissing it The plethora of web frameworks is a good thing! Doing proper research can save time and money Testing is the best path to future maintenance © 2007 Raible Designs, Inc.
  48. 48. Questions? matt@raibledesigns.com http://raibledesigns.com Download presentation from: http://raibledesigns.com/rd/page/publications © 2007 Raible Designs, Inc.

×