See which of your colleagues or former colleagues are already on Java Link: Check out the Contact Finder
News »Browse Articles » Grails, Groovy, Java, and Web 2.0 Client/Server Development
+1
Vote Vote

Grails, Groovy, Java, and Web 2.0 Client/Server Development

Views 3 Views    Comments 0 Comments    Share Share    Posted 07-05-2009  
Java is a big, complex, expansive technology that provides capabilities for use in the Data Center to the desktop, all the way out to handheld device. There are all kinds of Java-centric technologies, from IDEs to databases, toolkits, graphical user interface toolkits, etc. If your experience with Java development has been primarily what might be called "core client/server development" (which is the case for me), then there are a lot of Java-related technologies that you`ve never actually worked with.

I was thinking about this as I read John Ferguson Smart`s blog post Changing ports with Grails: "Hmm.. so what is Grails, anyway? Clearly it has something to do with Rails (which I also don`t know much about)..."

Anyway, this prompted me to visit the Grails site, which led me to look into Groovy. I then came across a 2007 post by nitinpai titled Groovy with Grails - Java`s fight back to Ruby on Rails.

After browsing those sites for a while I started to understand what this was all about. It`s kind of a contradiction--Java is a strongly typed, compiled language, and you`re trying to in essence wrap it in something that`s just the opposite. Yet at the same time, this is exactly what is being done in other technologies, like AJAX, and it is highly suitable for web applications.

One area where I do have a fair amount of experience is writing scripts on the Unix platform. In the Solaris/Linux Data Center where I`ve spent most of my recent time as a software developer, we tend to wrap highly computationally-intensive applications (complex mathematical models, largely written in C or Fortran) in Perl (which we use for database access and structural actions like creating directories, gathering input files into those directories, executing the mathematical applications, assessing the results, archiving them, producing logs, firing off warnings when something goes wrong, etc.) The Perl scripts are typically launched by a csh script that usually does little more than configure the Unix environment variables.

No, this isn`t exactly the same as Grails and Groovy, but it`s somewhat similar in that you have a front-end language/framework where it`s very easy to quickly manipulate variables, create printed messages, access a database, etc., "calling" applications or functions that are server-grade, built for efficiency using a compiled language where the constraints are much more rigorous, leading to very fast execution of complex functions. Unlike the front end, building this back end software is not a quick activity--nor can it be, a mission-critical scenario.

Also, these back-end applications (whether written in Fortran, C, C++, or Java) may well be legacy applications that were written long before "Web 2.0" was a reality or even conceived as a possibility. Some of them have been churning away in their data centers for a long time, as the consumer-facing world around them has evolved. Today, Web access to these capabilities makes sense, and frameworks such as Grails and Groovy make such access to core Java applications (and also more basic Java applications) conveniently possible.

As you may be learning, I like graphs. I looked at the Google Trends plot for ruby on rails, grails.

Source:
http://weblogs.java.net/blog/editors/archives/2009/05/grails_groovy_j.html
+1
Vote  Vote
Enter your comment:
No Comments For This News

Search News

What's the News?

Post a link to something interesting from another site, or submit your own original writing for the Java community to read.

Most Popular News

Most Recent User Submitted News