News »Browse Articles »
Java Kicks Ruby on Rails in the Butt
+1
Java Kicks Ruby on Rails in the Butt
This article tries to demonstrate that Java can be more productive than Ruby. We are going to develop the same application of the article Rolling with Ruby on Rails Revisited (part 1 [1] and part 2 [2]) but using POJO [3]s annotated with JPA [4] and a Model Driven Framework, OpenXava [5] in this case. The result is that with less code, and less time you obtain a more powerful application.
Ruby and rails: The regressive framework
Ruby on rails [6] is so elegant, so easy, so productive. I cannot avoid read and heard continuously these comments. For example, the article Rolling with Ruby on Rails Revisited of Bill Walton says:
“What would you think if I told you that you can develop a web application at least ten times faster with Rails than you can with a typical Java framework?”
Oops! Ten times faster!
Well, after these comments I decided to learn Ruby on Rails. I need to know the true key of the productivity and programmer happiness.
After have a taste of RnR I found it a very classic framework, with old techniques:
Ruby is a dynamically typed [7] language, as Smalltalk [8]. I prefer statically typed [9] languages.
Scaffolding is passive code generation, as IDE wizards or AppFuse [10]. I prefer active code generation [11], or even better, no code generation at all.
Relational database centric: the code generators and ActiveRecord promote think first in tables after in classes. I prefer a more pure OO, as Hibernate [12], JPA [4] or even ODBMS [13].
MVC [14]: I`m looking for something newer and better that an old MVC framework.
The Java problem: Java developers
The productivity in Java world is a cultural problem, not a technical one. That is this is not a Java fault, it`s our fault, we, the Java developers, need to design very beautiful architectures, to apply everywhere the GoF [15] patterns, to do everything reusable, to put 3 tiers in all our systems and to use web services [16] for all. We are not looking for simplicity, therefore we have not found it. But, Java is a very elegant language that allows simpler approach to software development.
Java productivity: The other way
A way for productivity is to use a Model Driven approach. That is, develop the model part, and only the model part, of our application, and to use a framework to produce all the application from it. MDA [17], OpenXava [5], Trails [18], NakedObjects [19], RomaFramework [20] and JMatter [21] are examples of this approach....
Source:
http://java.sys-con.com/node/965189
Ruby and rails: The regressive framework
Ruby on rails [6] is so elegant, so easy, so productive. I cannot avoid read and heard continuously these comments. For example, the article Rolling with Ruby on Rails Revisited of Bill Walton says:
“What would you think if I told you that you can develop a web application at least ten times faster with Rails than you can with a typical Java framework?”
Oops! Ten times faster!
Well, after these comments I decided to learn Ruby on Rails. I need to know the true key of the productivity and programmer happiness.
After have a taste of RnR I found it a very classic framework, with old techniques:
Ruby is a dynamically typed [7] language, as Smalltalk [8]. I prefer statically typed [9] languages.
Scaffolding is passive code generation, as IDE wizards or AppFuse [10]. I prefer active code generation [11], or even better, no code generation at all.
Relational database centric: the code generators and ActiveRecord promote think first in tables after in classes. I prefer a more pure OO, as Hibernate [12], JPA [4] or even ODBMS [13].
MVC [14]: I`m looking for something newer and better that an old MVC framework.
The Java problem: Java developers
The productivity in Java world is a cultural problem, not a technical one. That is this is not a Java fault, it`s our fault, we, the Java developers, need to design very beautiful architectures, to apply everywhere the GoF [15] patterns, to do everything reusable, to put 3 tiers in all our systems and to use web services [16] for all. We are not looking for simplicity, therefore we have not found it. But, Java is a very elegant language that allows simpler approach to software development.
Java productivity: The other way
A way for productivity is to use a Model Driven approach. That is, develop the model part, and only the model part, of our application, and to use a framework to produce all the application from it. MDA [17], OpenXava [5], Trails [18], NakedObjects [19], RomaFramework [20] and JMatter [21] are examples of this approach....
Source:
http://java.sys-con.com/node/965189
Search News
News Categories
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
-
How to stand out from other Java/JEE Professionals?
Published about 14-01-2009 | Rated +3 -
10 reasons IT certification will be important in 2009
Published about 05-01-2009 | Rated +2 -
The 9 hottest skills for `09
Published about 02-01-2009 | Rated +1 -
New Features in Servlets 3.0
Published about 05-01-2009 | Rated +4
Most Recent User Submitted News
- Struts Architecture
Published about 04-08-2009 | Rated 0 - Should a main() method be compulsorily declared in all java classes?
Submitted by Balamurali | Rated 0 - singleton pattern
Submitted by Balamurali | Rated 0 - Java Web services: Introducing Metro
Published about 11-11-2009 | Rated 0







