Library columns
Ruby on Rails - Deserves the Hype?
- Learn How Ruby on Rails Can Speed Up Development
- Ruby on Rails' Impact on Productivity
- The rapid feedback loop
Ruby on Rails' Impact on Productivity
Rails is an integrated framework that utilizes the dynamic nature of the object-oriented Ruby programming language. Rails developers emphasize features of the framework for productivity rather than tools, and they take a common approach to Web architecture that should satisfy the needs of a large portion of the Web application projects in the wild.
As Rails was developed, the innovators of the framework realized that there were a multitude of features inherent to the framework that could benefit all Web applications. Rails is an extremely productive framework for database-backed Web applications. It is different from other frameworks in that it preaches convention over configuration. Typically, if you were building a computer program, you had to start from scratch and rely heavily on the skills and experience of the team's architect to develop and adhere to standards of writing good software. Rails primarily uses conventions to avoid configuration when possible, resulting in time saving and enhanced productivity. In a study by IBM, Rails applications needed a fraction of the configuration code of Java counterparts, often by a factor of ten or more (1). Where the programmer must specify configuration, Rails usually relies on Ruby programming language to provide configuration. The strategy saves developers many lines of code and simplifies the code that does need to be written. By taking mundane but essential decisions away from the developer, productivity increases substantially because more time and attention is spent satisfying the customer's requirements rather than the technical plumbing that can burden most projects.
Ruby on Rails is known for its ability to build Web applications quickly and with ease. For first-time users of Java, it could take about five to ten days to build a moderately useful Web application that will communicate with a database using accepted Java Web best-practices such as separating business logic, from display logic (commonly referred to as Model-View-Controller). With no prior training on Ruby on Rails, it takes about one day to accomplish the same goal using the Ruby programming language. In several more days, it is possible to build a relatively complete Web application with Ruby on Rails.
In Java, a developer has countless decisions to make about how to proceed when communicating with a database. Should I use JDBC? Should I use an Object-Relational-Mapping (ORM) library, and, if I use an ORM, which one should I choose? TopLink? Hibernate? JDO? Do I need to use EJB2 or EJB3? Rails has an ORM database layer built into its framework called ActiveRecord. Another useful feature of Rails is scaffolding - Similar to how a building under construction uses scaffolding to assist in the construction of the final structure, Rails can generate code called scaffolding that can be used to quickly put up functional Web pages that talk to a database and allow you to add, delete and change information quickly and with very little coding. As previously mentioned, in other languages you have to select naming conventions and define the general structure of the file system, while Rails utilizes conventions and the Ruby programming language so that all of that is provided for you. Managers will appreciate the fact that Rails minimizes configuration and encourages standardization. This feature enables programming skills to be more portable. Rails developers can move from one project to another with ease, since standards common to all development projects, such as naming conventions, directory structures, unit-test frameworks, and interface templates, are already decided, with working samples always available.
Related articles
- Rails: an introduction
- What You Need to Know about PCI Compliance and Web Application Security Policy Changes
- Effective Controls for Attaining Continuous Application Security Throughout the Web Application Development Life Cycle
- Using Ajax for Web Application Development: What Businesses Need to Know
Related discussion
-
London Ruby User Group
by jaydip65 (0 replies)
-
Not able to launch the web application
by NaseemAhmed (0 replies)
-
FTP batch upload
by davidvanr (1 replies)
-
Internet Bandwidth & traffic
by baby_1 (1 replies)
Related podcasts
-
Scott talks to Martin Fowler and David Heinemeier Hansson
Scott sits down with Martin Fowler of Thoughtworks and David Heinemeier Hansson of 37 signals and talks about beauty, making developers happen, the death (or life) of HTML, the future of Microsoft, and asks if we should care about Rich Internet Applications. DHH is the creator of the Ruby on Rail...
Events coming up
-
Dec
9
Copenhagen.rb November 2009 meeting
København K, Denmark
The monthly gathering of Ruby users in Copenhagen. Preliminary agenda: * Casper Fabricius: My "secret project". Video-encoding, direct flash-upload to S3, Rails metal, formtastic, Heroku-hosting etc. * Kristian Mandrup: "adv-trace-util". A tool for unobtrusive tracing of Ruby code.
Hi
Nice article, What is the scope of the ROR in web design field. can ROR replace the PHP? I think you need to read this article.
thanks
This thread is for discussions of Ruby on Rails Proves It Deserves the Hype.