Ruby on Rails, a volte noto come "RoR" o semplicemente "Rails", è un framework open source per lo sviluppo Web in Ruby, un linguaggio di programmazione orientata agli oggetti (OOP) simile a Perl e Python.
La differenza principale tra Ruby on Rails e altri framework per lo sviluppo risiede nella velocità e nella facilità d'uso di cui godono gli sviluppatori che lavorano nell'ambiente. Le modifiche apportate alle applicazioni vengono applicate immediatamente, evitando i passaggi dispendiosi in termini di tempo normalmente associati al ciclo di sviluppo web. Secondo David Geary, un esperto di Java, il framework basato su Ruby è da cinque a 10 volte più veloce di framework simili basati su Java. In un post sul blog, Geary ha previsto che Rails sarebbe stato ampiamente adottato nel prossimo futuro.
Rails è composto da diversi componenti, oltre a Ruby stesso, tra cui:
- Record attivo, un livello di mappatura relazionale di oggetti
- Action pack, un gestore di controller e funzioni di visualizzazione
- Mailer d'azione, un gestore di posta elettronica
- Servizi web di azione
- Prototipo, un implementatore di drag and drop e funzionalità Ajax
Rails può essere eseguito sulla maggior parte dei server Web che supportano CGI. Il framework supporta anche MySQL, PostgreSQL, SQLite, SQL Server, DB2 e Oracle. Rails è anche un framework MVC (model, view, controller) in cui tutti i livelli sono forniti da Rails, invece di fare affidamento su altri framework aggiuntivi per ottenere il pieno supporto MVC. Inventato da David Heinemeier Hanss, Ruby On Rails è stato sviluppato come progetto open-source, con distribuzioni disponibili tramite rubyonrails.org.