|
The case for the Storm custom tag library
For over six years I have worked with customers
who wanted to develop web applications in Java. Sounds easy? Well it is
much more difficult than it should be. Normally companies like Sun
continue to preach that in order to start with Java it is necessary to
learn the complete J2EE platform. I disagree. Instead, we do need a new way
to teach java in small steps.
Java is a great language for experienced programmers. It gives you a
lot of freedom and there are many different ways to solve a single
problem. This is great but liberty comes at a price. In this case, the
price is confusion and complexity for novice developers. They normally
start learning the Java language and stumble on the first complexity,
Threads. Why do we keep insisting that everyone who wants to write JSPs
has to learn about Threads? Then they learn about servlets, which is
nice but really unnecessary since once they start writing JSPs they
will, in most cases never write a servlet again. Finally, they are told
that they need to adopt a framework that will help them implement a MVS
model and it takes them another week or so to learn. Why are we
surprised that so many people keep using Perl, PHP or Microsoft
technologies to build web applications when there are better
alternatives in the Java world. What we really need is an easy entry
path to Java web programming.
It is with that goal in mind that I wrote the storm library. The idea
is that beginners start benefitting from the beginning from the
object-oriented design of Java by using components in their Java Server
Pages. In order to facilitate the task of creating tags, Storm provides
two foundation tags that can be easily extended to create new tags in
an easy and consistent way. No java is allowed inside the JSPs to
enforce strict separation of the presentation and the business logic
layers. By defining strict rules that are easy to follow, beginners are
able to produce results very quickly. In my experience, a three day
long workshop is enough for most beginners. After that, they are ready
to start writing their own applications. It is true that they will not
have learned about EJBs, JNDI and other important J2EE APIs but they
will be able to learn those later. Most of those I have tought Java
using Storm now use EJBs from their own custom tags. I f they had not
been successful using Java from the very beginning, now they would be
using other technologies, and that would not have been good for the
J2EE platform
The Storm custom tag library is an open-source project that will be
hosted on sourceforge. Additional material, such as training classes
and documentation will be made available on this site later.
|