Ruby on Rails is an open source framework making it easier to develop, deploy, and maintain web applications. The framework is designed in Ruby. Rails was created by David Heinemeier Hansson in 2005 with subsequent updates being made upon.
Professional developers wanted to feel that the applications they were developing were designed and implemented using modern, professional techniques. So, these developers opted Rails and discovered it wasn’t just a tool for hacking out sites. Subsequently, Rails has undergone the transformation from being a popular framework to a dynamic fully-functional system. Rails has turned into a primary choice with a diverse set of developers working on the framework.
Rails applications are implemented using the Model-View-Controller (MVC) architecture but Rails takes MVC further: when you develop in Rails, you start with a working application, there’s a place for each piece of code, and all the pieces of your application interact in a standard way. Best way to create a framework is to locate the central themes in an application and then embed them in an all-purpose common foundation of code. When you’re developing an application using Rails, you start with half of it already prepared.
Rails applications are written in Ruby. Ruby is a programming language that supports many different kinds of programming paradigms and is purely object oriented and was designed to be natural. Ruby is used for web applications, task automation, game programming, computer administration and almost anything else you can think of. It is a modern, concise scripting language. You can express ideas in Ruby code briefly. This leads to programs that are short and easy to read. It also allows performing tasks that would normally be done in external configuration files inside the codebase instead.
DRY stands for don’t repeat yourself:
Every piece of code in a system should be written in just one place. Rails follows the DRY principle by employing that changes to the code in Rails applications impact a lot less code than the same changes would cause in other frameworks. Since Rails applications are written in Ruby, changes tend to be localized
Convention over configuration
It means that the framework extends appropriate defaults for about every part of putting together your application. Going by the conventions, you can frame a Rails application using less code than any standard Java web application. Also, overriding the conventions is possible.
Other cool features :
- Rails has made it easier to incorporate features such as Ajax and RESTful interfaces into their code by proving built-in support.
- With Rails you can deploy successive releases of your application to multiple servers with a single command.
- If working on Rails, there are no sets of heavy tools, no complex configurations, and no elaborate processes. There are just editors, and snippets of Ruby code.
- The task of documentation being enormous, is often completed by a third party rather than the developer. Compared to the documentation features of other languages, Ruby makes it extremely easy to document your code as you create it, using a utility called RDoc (standing for “Ruby Documentation”).
- The framework enables delivery of working version of software early in the development cycle. Missing and confusing customer requirements are identified. This helps to understand what the final product would look like encouraging customer collaboration.