4 Einführung in Ruby
Was ist Ruby? Die kurze Antwort auf diese Frage lautet: Ruby ist eine sehr mächtige, hochgradig objektorientierte Skriptsprache mit einer einfachen Syntax.
Dieses Kapitel dient als Einführung in die Programmiersprache Ruby. Wir erheben aber nicht den Anspruch auf Vollständigkeit. Das würde wieder ein ganzes Buch füllen. Wir werden nur die Aspekte genauer betrachten, die für die Arbeit mit Rails wichtig sind. Wenn Sie Ruby in seiner Gesamtheit erfassen möchten, empfehlen wir das Standardwerk >>Programming Ruby<< (PickAxe) von Dave Thomas, Chad Fowler und Andrew Hunt.
4.1 Was ist Ruby?
Ruby-Programme sind wegen der klaren Syntax leicht zu verstehen. Das heißt aber nicht, dass Ruby nichts zu bieten hat. Ruby ist eine rein objektorientierte Sprache, die u. a. von Smalltalk, Python und Perl beeinflusst wurde.
Alles ist ein Objekt
Fast alles in Ruby ist ein Objekt und folgt dem Prinzip von Klassen und Instanzen. Skalare Datentypen gibt es nicht. So ist z. B. auch eine Zahl ein Objekt. Sogar Klassen sind Objekte. Diesen Grad der Objektorientierung erreichen andere Programmiersprachen, die im Internet zum Einsatz kommen, wie Perl, PHP oder Java, nicht. Hier kennt man Daten -- z. B. Zahlen vom Typ Integer --, die keine Objekte sind. In Ruby gibt es deshalb keine Funktionen, sondern Methoden, die zu einem Objekt gehören.
Interpreter
Ruby ist eine Interpretersprache, das heißt, anders als Compilersprachen wie z. B. C werden Ruby-Programme nicht vor der Ausführung in ein Binärformat übersetzt (kompiliert), sondern direkt zur Laufzeit von einem Interpreter analysiert und ausgeführt. Dies ist auch der Hauptvorteil, den Interpretersprachen gegenüber Compilersprachen haben. Darüber hinaus sind Interpretersprachen dynamischer als Compilersprachen, z. B. ist der Wechsel des Datentyps einer Variablen ganz einfach durch Zuweisung eines Wertes eines anderen Datentyps möglich. Bekanntere Interpretersprachen, aus denen man das auch schon kennt, sind z. B. Perl oder PHP. Der Nachteil von interpretierten Programmen gegenüber kompilierten Programmen ist die langsamere Geschwindigkeit.
Erfinder von Ruby
Die Sprache Ruby wurde 1995 von dem Japaner Yukihiro »Matz« Ma- tsumoto nach zwei Jahren Entwicklungsarbeit erstmals veröffentlicht. Er hat Ruby entwickelt, um Programmierer glücklich zu machen. Das Ergebnis ist eine gut ausbalancierte und natürlich wirkende Sprache, die leicht zu erlernen ist und in der man tatsächlich gerne programmiert. In der japanischen Heimat von Matz ist Ruby schon populärer als Python.
Herkunft des Namens
Der Name Ruby ist von »Rubin« abgeleitet. Da Ruby Perl ähnelt, wollte Matz auch den Namen eines Juwels wählen und entschied sich für den Geburtsstein eines Kollegen. Dass Rubin für den Monat Juli steht und Perl für Juni, man die Namensgebung auch so interpretieren könnte, dass Ruby der »Nachfolger« von Perl ist, war ihm zu diesem Zeitpunkt nicht bewusst.
Ruby zeichnet sich durch folgende Eigenschaften aus:
- konsequent:
Eine kleine Menge von Regeln definiert die ganze Sprache.
- kompakt:
Es gibt keine überflüssigen Sprachelemente.
- flexibel:
Die Sprache bietet genügend Spielraum, um sowohl einfache als auch komplexe Probleme mit ihr lösen zu können.
- anpassungsfähig:
Nahezu jeder Algorithmus lässt sich adäquat in Ruby formulieren.
Zuerst Japan
Trotz all dieser Eigenschaften wurde Ruby bis ca. 2004 hauptsächlich in Japan eingesetzt. Es gab zwar in den USA und in Deutschland Bücher zu Ruby, die Sprache galt aber als exotisch. Richtig bekannt wurde Ruby mit der Veröffentlichung des Webframeworks Ruby on Rails.
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.