Einführung
Die Philosophie von Rails baut auf den beiden Konzepten DRY und »Konvention statt Konfiguration« auf, die zusammen mit dem Model-View-Controller-Paradigma den Entwurf des Frameworks stark beeinflussen.
1.1 Wie entstand Rails? 

DHH
Ruby on Rails oder kurz Rails ist ein von dem Dänen David Heinemeier Hansson geschriebenes Open-Source-Webapplikation-Framework. Rails ist, wie der Name es vermuten lässt, in Ruby programmiert.
Basecamp
Ihren Anfang nahm die Rails-Geschichte 2004, als David Heinemeier Hansson die Anwendung erstmals veröffentlichte. Interessanterweise ist Rails nicht aus der Überlegung heraus entstanden, ein neues Web-Framework schaffen zu wollen, sondern wurde aus einer bestehenden Anwendung, dem Projektmanagement-Tool Basecamp, extrahiert. Das bedeutet, dass David Heinemeier Hansson möglichst viele Hauptaufgaben, die bei der Erstellung einer Webapplikation auftreten, direkt in das Framework integriert hat, was vor allem den praxisnahen Charakter von Rails unterstreicht.
DRY
Rails basiert auf dem Prinzip »Don't Repeat Yourself« (DRY) und stellt Programmierkonventionen über die Anwendungskonfiguration. Die konsequente Anwendung des DRY-Prinzips unterstützt den Entwickler. Durch seinen Aufbau ermöglicht es eine rasche Umsetzung von datenbankbasierten Webapplikationen nach der agilen Methode.
Konvention statt Konfiguration
Nicht zuletzt deshalb ist Ruby on Rails als Gegenstück zu schwergewichtigen Web-Frameworks zu verstehen. Anstelle aufwändiger Konfigurationen stellt Rails die Konvention über die Konfiguration. Nicht selten sind allein die Konfigurationsdateien einer Java2EE-Applikation länger als die gesamte Rails-Applikation.
Rails-Projekte
Beim Anlegen eines neuen Rails-Projektes werden nicht nur die Konfigurationsdateien erstellt, sondern auch die gesamte Projektverzeichnisstruktur. Das heißt, Rails übernimmt die Organisation des Projektes. Dadurch wird gewährleistet, dass alle Rails-Projekte die gleiche Struktur haben, was die Wartbarkeit von Rails-Applikationen unterstützt, und es ist deshalb sogar möglich, dass sich ein Rails-Entwickler sehr schnell in einem ihm fremden Projekt zurechtfindet. In Ruby on Rails wurden Features nach dem »Best Practice-Prinzip« integriert, so zum Beispiel Test Driven Development (TDD). Rails legt die nötige Verzeichnisstruktur an und unterstützt die erforderlichen Bibliotheken.
Viele Technologien
Auf eine komplette Webapplikation, die in Ruby on Rails entwickelt wird, haben neben Rails und Ruby noch sieben weitere Techniken oder Sprachen Einfluss. Neben HTML, CSS und JavaScript werden auch die Ruby-Gems-Erweiterungen von Ruby oder vielleicht auch ein relationales Datenbanksystem (RDBMS) eingesetzt. Über die RubyGems-Erweiterungen steht zum Beispiel das sehr sinnvolle Paket »rake« zum Ausführen von Tasks zur Verfügung. Eine wichtige Rolle spielt auch das Betriebssystem, so dass man sich vereinfacht eine Rails-Applikation wie folgt vorstellen kann:
Abbildung Techniken rund um Ruby on Rails
David Heinemeier Hansson wurde für die Entwicklung von Ruby on Rails 2005 mit dem von Google und O'Reilly verliehenen Open-Source-Award »Best Hacker« ausgezeichnet und Anfang 2006 für Rails 1.0 mit dem 16th Jolt Product Excellence Award »Software Development«.
Ihre Meinung
Wie hat Ihnen das Openbook gefallen? Wir freuen uns immer über Ihre Rückmeldung. Schreiben Sie uns gerne Ihr Feedback als E-Mail an kommunikation@rheinwerk-verlag.de.