Tuesday, 27 March 2012

What is the hottest Java web framework? Or maybe not Java?


I have not sat down for a long time and actually tried to determine the development of Java web framework arena. The host of "easy to use" Java web frameworks, which now adays is too many to be only partially aware.

Struts 1 came at a perfect time in history ... where your only option was either hand-coding everything or Struts ... and most people went with Struts.

Flash forward a few years later and now you are in a state where everyone has done, reviewed and revised and Struts Model 2-style web-frames again and again and again, each supposedly easier and faster than the previous one.

Some of the frames actually some pretty cool ideas on the table in new and interesting ways. They need other basic tasks with the most complicated / confusing syntax that you adjust to your ever thought that you (did sorta like Windows Vista) has already spent years learning and learn entirely new technology stack from scratch.

With so many options for Java web frameworks are and most of them are pretty decent from a technical level, the only thing to grow the adoption of specific tools and tool support causes.

Unfortunately, not many of the teams that understand these frameworks, / believe it or not, want to work with tools (of course, it can be very different tools to do than to make a frame).

In other words, what if you are a fairly experienced developer, and need no tools? What Java web framework has to be chosen for you? Well, that's what I want to try and find out ...

I will only examine frames that I have experienced significant growth and news for the past few years ... I apologize if I have your favorite part here, if it is excluded large enough to let me know and I'll add it.

I also tried only next-gen frameworks are ... Struts or WebWork so not in this list. The Java web frameworks I narrowed down to are (in no particular order):

JavaServer Faces: It's part of the specification have to consider it.
Apache Wicket: Big grassroots effort, personal favorite and strong team.
JBoss Seam: A lot of people who say it and it's pretty amazing solution for JSF development.
Spring MVC and WebFlow: I'm a pot would be thrown, because I do not think either has a significant market penetration to justify on their own, the various categories.
Struts 2: Struts was too big, not to count it.
And finally, I wanted to take a look (curiosity) to the following non-Java web frameworks:

Adobe Flex: This is where a lot of people praise him, who use them.
Ruby on Rails: Sizzling Hot
NOTE: I used Google Trends to determine a universal interest / penetration level of each technology. Alternative names for some technologies were combined to a single value (for example, "JSF" and "Java Server Faces" and "Java Server Faces") to create, in the hope to provide the most accurate values.

I would also make clear that Google Trends (not the number of pages indexed by the specified conditions) data on the frequency of keywords based. So if you "cat" to "Dog" They tend trending the frequency of times people use words like "cat" vs. "dog" look.

This is actually an interesting data point, because I think most people are looking for terms in the evaluation or to learn a technology stack ... not just for fun. So, by striking keyword frequency, we get a live "vibe" as active community around these technologies are in a roundabout way. Or at least a decent approximation is determined by the interest of a larger development community.

I used to represent the following values ​​into Google Trends engine, each frame:

JavaServer Faces (JavaServer Faces) | (JavaServer Faces) | JSF
Apache Wicket (Apache Wicket) | Wicket
JBoss Seam: (JBoss Seam) - Can not with the term "seam" is too simple
Spring MVC and WebFlow: (Spring MVC) | (Spring WebFlow) | (Spring Web Flow)
Struts 2 (Struts 2) | (struts2)
And for non-Java frameworks:

Adobe Flex (Adobe Flex) | (Adobe AIR) | (Flex 2) | (Flex 3)
Ruby on Rails (Ruby on Rails) | "RoR" | ruby ​​rails
I've tried to include most all of the different variations of the name, they provide the technology stack and eliminate potential false positives in order to give as accurate results as possible, especially with the framework contained normal-ish words in their names (for Example Seam and Flex).

If you have any improvements that you think might make the results more accurately have said, let me know.

NOTE: Also see the liberal use of qualifiers, I realized that it still creates an error rate of frequent words that can possibly fit one period. So do your own research and come to your own conclusions from the research environment for use in the workplace.

Let us now begin to analyze it. If you have all 4 of Java web frameworks chart a trend, at the end did with what I found to be a rather surprising result, JSF is the clear winner with a surprising amount of Struts 2 in mixed there:

1 comment:

  1. In the context of Android consider the Java Web Framework named "HybridJava" (http://www.hybridserverpages.com/) - the only real component-oriented framework tested under i-Jetty running on Android.

    ReplyDelete