Just how dynamic can you get?
I’m extremelly interested in figuring out how to integrate scripting languages that run on the JVM to make java application development (in particular web apps) more dynamic.
Stopping and restarting containers to add functionality is something that I can no longer accept. Being able to make changes to functionality without recompiling or repackaging is also something that i can no longer accept. Starting to sound like Ruby eh?
In today’s world you need to be able to respond to change ever more quicly then before, regardless of how often times such a request that causes a change is completly insane. If your customer needs a change, you better be able to give it to them or they’ll find someone else who isn’t so stuck up in their “properness” to do it.
This doesn’t mean that I believe it is ok to abandon proper practices and approaches, but I do think that there is more that I as a Java developer can do to allow my applications to adapt to change quicker.
Integrating dynamic scripting languages that run on the JVM like Rhino, Groovy, JRuby or Jython, is one way that I believe this can be achieved. For example, why write a struts action in a java class? Why can’t this be done with a script?
The good news? Others have thought of this. Struts has an extension to support BSF, Spring has Groovy support as an alternative way to wire up dependencies (tres cool). A little bit of this, plus a good dose of convention over configuration, may just go a long way.
Or maybe i should just use Ruby
