Benutzer:Daniel Bovensiepen/Ruby (Programmiersprache)
Ruby
| |
---|---|
![]() Ruby Quelltext | |
Basisdaten
| |
Entwickler | Yukihiro Matsumoto und andere |
Aktuelle Version | 1.8.4 (24. Dezember 2005) |
Betriebssystem | MS Windows, Unix/Linux, Mac uvm. |
Kategorie | Programmiersprache |
Lizenz | GPL-kompatibel (Ruby's Lizenz) |
deutschsprachig | nein |
http://www.ruby-lang.org/ |
!!!! ACHTUNG: Dieser Artikel dient zur Vorbereitung einer größeren Änderung an dem Artikel Ruby_(Programmiersprache). !!!!!
Ruby ist eine Programmiersprache, die mehrere Programmierparadigmen umfasst. So wird die objektorientierte, prozedurale und funktionale Programmierung unterstützt.
Sie wurde in der Zeit von 1993 bis 1995 von Yukihiro „Matz“ Matsumoto in Japan entwickelt. Die Referenzimplementierung von Ruby interpretieren den Quelltext eines Ruby-Programmes derzeitig ohne Zwischencode.
Der Name „Ruby“ (engl. für Rubin) basierte ursprünglich auf dem Edelstein, wird jedoch heute als Anspielung auf die Programmiersprache Perl (engl. für Perle) verstanden.
Geschichte
Ruby wird seit dem 24. Februar 1993 von Yukihiro „Matz“ Matsumoto in Japan entwickelt. Sie wurde nach dem Prinzip der geringsten Überraschung entworfen, damit ist gemeint, dass die Sprache frei von Fallen und Widersprüchen ist, mit denen man bei anderen Programmiersprachen zu kämpfen hat. Sie wurde 1995 im Internet veröffentlicht und besitzt in Japan einen Stellenwert wie Python. In Europa und Amerika wurde die Sprache im Jahre 2000 durch das erste englische Ruby-Buch bekannt.
Merkmale der Sprache
Nutzungsbedingungen
Ruby ist freie Software. Aufgrund dessen ist Sie erstens kostenlos nutzbar und zweitens im Quelltext verfügbar. Hierdurch ergibt sich die Möglichkeit, die Sprache an seine eigenen Bedürfnisse anzupassen oder Sie in eigene Programme einzubinden. Hierzu sollten Ruby's Lizenz Bedingungen beachtet werden.
imperative Sprachelemente
Im Gegensatz zu Sprachen wie Java und C# ist es in Ruby nicht notwendig, seine Programme explizit in einer Klasse zu definieren. Da jedes Ruby-Programm in einem globalen main-Objekt erstellt wird, ist dieses sich oft wiederholende Sprachkonstrukt unnötig. Aufgrund dessen ist folgender Codeabschnitt bereits ein vollständig lauffähiges Ruby-Programm:
def meine_methode puts 'Hello World' end meine_methode
objektorientierte Sprachelemente
Ruby ist vollständig objektorientiert. Da es keine primitiven Basistypen wie in Java gibt, sind folgende Sprachkonstrukt mit Zahlen und Zeichenketten möglich:
42.object_id "ein kurzer String".object_id
Eine Klassendefinition die von der Mutterklasse Object erbt, könnte wiefolgt aussehen:
class Auto def beschleunigen puts 'BrumBrumBrum' end end honda_jazz = Auto.new honda_jazz.beschleunigen
Eine Klassendefinition die von einer anderen Klasse als Object erbt, muss wiefolgt implementiert werden:
class Honda < Auto def beschleunigen puts 'BrumBrumBrum' end end jazz = Honda.new jazz.beschleunigen
funktionale Sprachelemente
Ruby's Lizenz
Die Lizenz bietet die Möglichkeit den Interpreter und die Standardbibliothek unter den Bedingungen der GPL zu nutzen. Zusätzlich ist eine Nutzung unter den in [1] genannten Konditionen möglich.
Literatur
- David Thomas, Andrew Hunt, Chad Fowler: Programming Ruby, Pragmatic Bookshelf , 15. Oktober 2004, ISBN 0-974-514-055 (englisch - beschreibt Version 1.8)
- David Thomas, Andrew Hunt: Programmieren mit Ruby, Addison-Wesley, 15. Februar 2002, ISBN 3-827-31965-X (deutsch - beschreibt Version 1.6)
Weblinks
- http://www.ruby-lang.org/en/ – Ruby-Homepage (Englisch)
- http://www.ruby-lang.org/en/LICENSE.txt - Ruby's Lizenz