Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
How to Choose
A Web Application
Framework



Sang Shin, sang.shin@sun.com
Java Technology Architect
www.javapassion.com
Su...
Factors to consider
• Technical features of the framework
• Types of application, Types of framework
    > Request-based (...
Features of the
Framework




                  3
Technical Features
•   Dispatching
•   Navigation (page selection)
•   Tag support
•   Conversion (conversion of String to...
Types of Apps &
Types of Frameworks




                      5
Types of Applications
• Internet facing, large number of clients, high-traffic
  > Yahoo, Amazon.com, Company's public web...
Types of Web App. Frameworks
• Request based frameworks
  > Struts 1, Struts 2, Spring MVC
• UI-Component based framework
...
Types of Applications
• Internet facing, large number of clients, high-traffic
  > Request-based framework (Struts 2, Spri...
Ease of Development,
Ease of Testing &
Debugging & Profiling,
Tool Support



                         9
Ease of development
• Does the framework support hot deployment?
  > Will save development time
• Convention of configurat...
Ease of testing, debugging, profiling
• Does the framework support unit-testing and
  integration testing?
  > Tool suppor...
POJO Based?
Dependency Injection?




                        12
POJO based?
• Business logic can be captured in the form of POJO
  > You don't have to extends or implement framework
    ...
Dependency Injection Support?
• Ease of development
• Ease of testing




                                14
Community Support,
Standard or not




                     15
Community Support
• Is the community big enough, active enough to help
  me?
  > Active discussion?
• Is the community wor...
Standard or not?
• No vendor lock-in
• Future enhancement




                       17
Maturity &
Real-life Usage Cases




                        18
Maturity
• Has it proven in the market place?
• Do production environments use it?




                                   ...
So... Which One?




                   20
My Recommendation
• Choose JSF if you are not sure
  >   It is a standard
  >   All vendors support it
  >   Mature and pr...
How to Choose
A Web Application
Framework



Sang Shin, sang.shin@sun.com
Java Technology Architect
www.javapassion.com
Su...
Upcoming SlideShare
Loading in …5
×

How to ChoosHow to Choose A Web Application Framework

2,387 views

Published on

Published in: Technology, Education
  • Be the first to comment

How to ChoosHow to Choose A Web Application Framework

  1. 1. How to Choose A Web Application Framework Sang Shin, sang.shin@sun.com Java Technology Architect www.javapassion.com Sun Microsystems, Inc. 1
  2. 2. Factors to consider • Technical features of the framework • Types of application, Types of framework > Request-based (Action-based) or UI-Component based framework • Ease of development • Ease of testing • Tool support • POJO based • Dependency Injection support • Community and vendor support • Standard-based or not • Maturity and real-life usage cases 2
  3. 3. Features of the Framework 3
  4. 4. Technical Features • Dispatching • Navigation (page selection) • Tag support • Conversion (conversion of String to model data types) • Usage of HTML designer • Validation framework (client & server) • View technologies (JSP, Velocity, PDF, etc.) • Extensibility • Conversational scope support • Template and Tiles support • Ajax support • Internationalization 4
  5. 5. Types of Apps & Types of Frameworks 5
  6. 6. Types of Applications • Internet facing, large number of clients, high-traffic > Yahoo, Amazon.com, Company's public website • Intranet, small number of clients > Employee website 6
  7. 7. Types of Web App. Frameworks • Request based frameworks > Struts 1, Struts 2, Spring MVC • UI-Component based framework > JSF, Tapestry 7
  8. 8. Types of Applications • Internet facing, large number of clients, high-traffic > Request-based framework (Struts 2, Spring MVC) • Intranet, small number of clients > UI-Component based framework (JSF) 8
  9. 9. Ease of Development, Ease of Testing & Debugging & Profiling, Tool Support 9
  10. 10. Ease of development • Does the framework support hot deployment? > Will save development time • Convention of configuration > No need to specify common default values > Configuration required only when non-default values are used 10
  11. 11. Ease of testing, debugging, profiling • Does the framework support unit-testing and integration testing? > Tool support • Is profiling possible with the framework? 11
  12. 12. POJO Based? Dependency Injection? 12
  13. 13. POJO based? • Business logic can be captured in the form of POJO > You don't have to extends or implement framework specific class or interfaces? > You can test the business logic without the presence of the framework > You can use different framework in the future with minimal disruption 13
  14. 14. Dependency Injection Support? • Ease of development • Ease of testing 14
  15. 15. Community Support, Standard or not 15
  16. 16. Community Support • Is the community big enough, active enough to help me? > Active discussion? • Is the community working actively for the evolution of the framework? > Frequent release 16
  17. 17. Standard or not? • No vendor lock-in • Future enhancement 17
  18. 18. Maturity & Real-life Usage Cases 18
  19. 19. Maturity • Has it proven in the market place? • Do production environments use it? 19
  20. 20. So... Which One? 20
  21. 21. My Recommendation • Choose JSF if you are not sure > It is a standard > All vendors support it > Mature and proven in the market place > Many tools 21
  22. 22. How to Choose A Web Application Framework Sang Shin, sang.shin@sun.com Java Technology Architect www.javapassion.com Sun Microsystems, Inc. 22

×