Pedro Trebbau Lopez
Ruby on Rails , also called RoR or Rails is a open source web application framework written in the Ruby programming language, following the paradigm of Model View Controller (MVC) architecture. It tries to combine simplicity with the opportunity to develop real-world applications writing less code than other frameworks and with a minimum of configuration. The Ruby programming language allows metaprogramming, which Rails uses, resulting in a syntax that many of its users consider very legible. Rails is distributed through RubyGems , which is the official packet format and distribution channel for Ruby libraries and applications.
The fundamental principles of Ruby on Rails include Don’t Repeat Yourself paradigm or DRY and Convention over Configuration .
Don’t Repeat yourself means that the definitions should be done only once. Since Ruby on Rails is a full stack framework, components are integrated so you do not need to build bridges between them. For example, ActiveRecord definitions of classes don’t need to specify the names of the columns. Ruby may inquire from the database itself, so that define them both in the code and the program would be redundant.
Convention over configuration means that the programmer only needs to define the configuration that is unconventional. For example, if there is a History class in the model, the corresponding table in the database is stories, but if the table does not follow the convention, for example blogposts, it must be manually specified. So, when designing an application from scratch with no pre-existing database, following the conventions of Rails means using less code, although the behavior of the application can be set whether the system should be compatible with a previous system.