|
|
 |
|
 |
| Wörterbuch der Bedeutung |
<<Zurück
Bitte wählen Sie einen Buchstaben:
A, Ä |
B |
C |
D |
E |
F |
G |
H |
I |
J |
K |
L |
M |
N |
O, Ö |
P |
Q |
R |
S |
T |
U, Ü |
V |
W |
X |
Y |
Z |
0-9
(Groß-/Kleinschreibung wird nicht unterschieden)
Klicken Sie hier, um zur Shopping-Mall zu gelangen
Ruby (Programmiersprache)
*** Shopping-Tipp: Ruby (Programmiersprache)
{{Infobox_Programmiersprache|
Name=Ruby
|Logo= Bild:Ruby_logo.png 150px
|Beschreibung= Offizielles Logo
|Erscheinungsjahr = 1995
|Entwickler= Yukihiro Matsumoto und andere
|AktuelleVersion= 1.8.6
|AktuelleVersionFreigabeDatum= 13. März 2007
|Typisierung = dynamische Typisierung dynamisch
|Betriebssystem= Plattformunabhängigkeit Plattformunabhängig (siehe #Implementierungen unten)
|Beeinflusst_von= Smalltalk (Programmiersprache) Smalltalk, Perl, Python (Programmiersprache) Python, LISP
|Beeinflusste =
|Lizenz= GNU General Public License GPL und eigene (siehe #Lizenz Lizenz)
|Website= [http://www.ruby-lang.org/ ruby-lang.org]
}}
'''Ruby''' (engl. für Rubin) ist eine Interpreter interpretierte, Objektorientierte Programmierung objekt-orientierte Programmiersprache, die mehrere weitere Programmierparadigma Programmierparadigmen (Prozedurale Programmierung, Funktionale Programmierung, Nebenläufigkeit) unterstützt.
Sie wurde in der Zeit von 1993 bis 1995 von Yukihiro Matsumoto Yukihiro „Matz“ Matsumoto in Japan entworfen und wird heute als Open Source Open-Source-Projekt weitergepflegt. Die Referenzimplementierung Interpreter interpretiert den Quelltext derzeit ohne Zwischencode.
Der Name basierte ursprünglich auf dem Edelstein Rubin und wird heute auch als Anspielung auf die Programmiersprache Perl (Programmiersprache) Perl verstanden.
Geschichte
Ruby wird seit dem 24. Februar 1993 von Yukihiro „Matz“ Matsumoto in Japan entwickelt. Die Sprache wurde 1995 im Internet veröffentlicht und besitzt in Japan in etwa einen Stellenwert wie Python (Programmiersprache) Python im Westen. In Europa und Amerika wurde Ruby ab dem Jahr 2000 durch erste nicht-japanische Literatur bekannt.
Merkmale
Programmierparadigmen
Ruby ist eine objektorientierte Sprache (alle Datentypen in Ruby sind Objekte, die von einer bestimmten Klasse erzeugt wurden), wurde aber ähnlich wie C++ als „Multiparadigmen-Sprache“ entworfen. Das bedeutet, dass es dem Entwickler offensteht, weitere Programmierparadigmen zur Erstellung seiner Programme zu nutzen.
= Objektorientierte Programmierung
=
Ruby ist wie Smalltalk (Programmiersprache) Smalltalk vollständig objektorientiert. Da es aufgrund dessen keine primitiven Datentypen wie in Java gibt, sind folgende Sprachkonstrukte mit Zahlen und Zeichenketten möglich:
puts 42.class # Ausgabe: Fixnum
puts "ein kurzer String".class # Ausgabe: String
Eine Klassendefinition, die von der Mutterklasse ''Object'' erbt, könnte wie folgt aussehen:
class Auto
def beschleunigen
puts 'BrumBrumBrum'
end
end
auto1 = Auto.new
auto1.beschleunigen
Eine Klassendefinition die von einer anderen Klasse als ''Object'' erbt, muss wie folgt implementiert werden:
class GutesAuto < Auto
def bremsen
puts 'Quietsch'
end
end
auto2 = GutesAuto.new
auto2.beschleunigen
auto2.bremsen
Die Klasse GutesAuto erbt alle Methoden der Klasse Auto, u. a. auch beschleunigen. Zusätzlich wird für GutesAuto noch die Methode bremsen definiert.
= Imperative Programmierung
=
Im Gegensatz zu Sprachen wie Java (Programmiersprache) Java und C-Sharp 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
= Funktionale Programmierung
=
Weil in Ruby alles einen Wert hat, lassen sich Probleme funktional behandeln.
lang = if "de." == url[0, 3]
"Deutsche "
else
"Unbekannte Sprache"
end
Besonderheiten
= Prinzip der geringsten Überraschung
=
Ruby wurde nach dem Prinzip der geringsten Überraschung (kurz: POLS für „Principle of least surprise“) entworfen. Rubys Designer versuchen, die Sprache so zu gestalten, dass Programmierer die Sprache ''intuitiv'' nutzen können. Matz sagt dazu: "''Das Prinzip der geringsten Überraschung ist das Prinzip ''meiner'' geringsten Überraschung. Und es ist das Prinzip der geringsten Überraschung nachdem Du Ruby sehr gut gelernt hast.''"
= Duck Typing
=
Die ''Duck Typing Duck-Typing''-Philosophie von Ruby basiert auf der Idee, die Behandlung eines Objekts nicht von dessen Klasse, sondern von den von ihm bereitgestellten Methoden abhängig zu machen. Hierbei wird die Reflection Introspektion von Ruby eingesetzt. Mit dieser kann überprüft werden, ob ein Objekt eine bestimmte Methode bereitstellt. Auf Basis dieser Philosophie können Methoden geschrieben werden, die mit Objekten unterschiedlichster Klassen kompatibel sind:
class Auto
def beschleunigen
puts 'BrumBrumBrum'
end
end
class GutesAuto < Auto
def bremsen
puts 'Quietsch'
end
end
def auto_abbremsen(auto)
puts 'Auto wird abgebremst...'
if auto.respond_to?(:bremsen)
auto.bremsen
else
puts 'Keine Bremse vorhanden!'
end
end
auto1 = Auto.new; auto2 = GutesAuto.new
auto_abbremsen(auto1)
auto_abbremsen(auto2)
Die Methode auto_abbremsen fragt nach, ob für das Objekt auto die Methode bremsen definiert wurde. Ist dies nicht der Fall, wird eine entsprechende Fehlermeldung 'Keine Bremse vorhanden!' ausgegeben.
Allgemeines
= Nutzungsbedingungen
=
Ruby ist freie Software. Aufgrund dessen ist es kostenlos nutzbar und im Quelltext verfügbar. Dadurch ergibt sich die Möglichkeit, die Sprache an seine eigenen Bedürfnisse anzupassen oder sie in eigene Programme einzubinden.
Der Interpreter und die Standardbibliothek von Ruby sind grundsätzlich unter den Bedingungen der GNU General Public License GPL nutzbar. Des Weiteren besteht die Möglichkeit, Ruby unter anderen Konditionen zu verwenden (siehe #Weblinks Lizenzbedingungen).
= Verbreitung
=
Lange Zeit wurde Ruby mangels englischsprachiger Dokumentation fast ausschließlich in Japan benutzt, wo es mittlerweile einen ähnlichen Stellenwert hat wie Perl und Python in Europa und Amerika. Um die Jahrtausendwende wurden Aktivitäten gestartet, um Ruby auch außerhalb Japans bekannt zu machen, woraufhin mit der Zeit auch englische Dokumentation entstand. Als derzeit bedeutendste Applikation, die auf Ruby basiert, ist das Web-Framework Ruby on Rails zu nennen.
= Implementierungen
=
Die ursprüngliche Referenzimplementierung von Ruby (aktuelle Version 1.8.5) wurde von Yukihiro „Matz“ Matsumoto als Interpreter in C entworfen. Der derzeitig offizielle Entwicklerzweig (aktuelle Version 1.9.0) bietet zusätzlich eine erste Implementierung eines Wordcode-Interpreters genannt YARV (kurz für ''Yet Another Ruby VM''). Weiterhin besitzt diese Version eine der derzeitig (Juli 2006) fortschrittlichsten Regexp-Maschinen.
Der offizielle Interpreter läuft auf den folgenden Betriebssystemen:
* POSIX-kompatible Systeme (u. a. Linux (Betriebssystem) Linux, FreeBSD und Mac OS X)
* Microsoft Windows (u. a. Microsoft Windows 2000 2000, Microsoft Windows XP XP und Microsoft Windows CE CE)
Parallel zum offiziellen Hauptzweig wird seit der Version 1.8.2 ein inoffizieller Zweig namens ''Sydney'' entwickelt. Dieser zeichnet sich durch die Implementierung neuer Features aus.
Eine weitere inoffizielle Implementierung ist JRuby. Dabei handelt es sich um eine vollständige Neuentwicklung des Ruby-Interpreters in Java mit dem Ziel, Ruby nahtlos in die Java-Plattform zu integrieren.
= Interaktive Ruby-Shell
=
'''I'''nteractive '''R'''u'''b'''y (kurz: '''irb''') ist ein Kommandozeileninterpreter für Ruby mit welchem der Anwender interaktiv Ruby programmieren kann. Oft wird er zum Analysieren und Testen eingesetzt:
irb(main):001:0> (3 + 4) * 2
=> 14
irb(main):002:0> ((3 + 4) * 2).to_s.reverse
=> "41"
Irb wird mit dem Ruby-Interpreter ausgeliefert, kann aber auch mithilfe von #Weblinks TryRuby im Browser ausgeführt werden.
= RDoc und ri
=
RDoc ist ein Software-Dokumentationswerkzeug, welches aus Ruby- und C-Quelltexten automatisch Hypertext Markup Language HTML-Dokumentationsdateien erstellt. Weiterhin wird eine Datenbank aufgebaut, die mit dem Tool ri durchsucht werden kann. RDoc und ri sind Bestandteil der Standarddistribution und werden direkt mit dem Interpreter zusammen ausgeliefert.
= RubyGems
=
RubyGems (kurz: '''gems''') ist das offizielle Paketmanagement Paketsystem für Ruby. Mit ihm hat der Anwender die Möglichkeit mehrere Versionen eines Programmes oder einer Bibliothek kontrolliert zu installieren und wieder zu entfernen.
Literatur
* ''Praxiswissen Ruby'' von Sascha Kersken, O'Reilly Verlag, 28. Februar 2007, ISBN 978-3-89721-478-1 (deutsch – beschreibt Version 1.8.5)
* ''Programming Ruby'', 2nd Edition, von Dave Thomas und Andy Hunt, Pragmatic Bookshelf, 15. Oktober 2004, ISBN 0-974-514-055 (englisch – beschreibt Version 1.8)
Ruby-Newsgroups
Das Usenet stellt für die Diskussion rund um Ruby die folgenden Newsgroups bereit:
* ''[http://groups.google.de/group/comp.lang.ruby comp.lang.ruby]'' (englischsprachig)
* ''[http://groups.google.de/group/de.comp.lang.ruby de.comp.lang.ruby]'' (deutschsprachig)
Weblinks
{{Wikibooks|Ruby-Programmierung}}
- Ruby-Homepage – offizielle Webseite
- Ruby-Doc.org – Dokumentationssammlung zu Ruby (englisch)
- TryRuby – Ruby direkt im Browser testen (englisch)
- Lizenzbedingungen
- Deutsches Rubyforum
* {{dmoz|World/Deutsch/Computer/Programmieren/Sprachen/Ruby|Ruby}}
Kategorie:Programmiersprache Ruby
Kategorie:Programmiersprache
Kategorie:Objektorientierte Programmiersprache
Kategorie:Skriptsprache
ar:روبي (لغة برمجة)
bg:Ruby
ca:Ruby
cs:Ruby
da:Ruby (programmeringssprog)
en:Ruby (programming language)
eo:Ruby (komputillingvo)
es:Ruby
eu:Ruby
fa:روبی
fi:Ruby
fr:Ruby
gl:Ruby
he:Ruby
hr:Ruby (programski jezik)
hu:Ruby programozási nyelv
id:Ruby
it:Ruby
ja:Ruby
ka:რუბი (პრ�გრ�მირების ენ�)
ko:루비 프로그래� 언어
ku:روبی
lt:Ruby
nl:Ruby (programmeertaal)
nn:Ruby
no:Ruby
pl:Ruby (język programowania)
pt:Ruby (linguagem de programação)
ro:Ruby
ru:Руби
ru-sib:Руби (перекатной говор)
sr:ПрограмÑ?ки језик Руби
sv:Ruby
ta:ரூபி
th:ภาษารูบี้
vi:Ruby (ngôn ngữ láºp trình)
zh:Ruby
*** Shopping-Tipp: Ruby (Programmiersprache)
[Der Artikel zu Ruby (Programmiersprache) stammt aus dem Nachschlagewerk Wikipedia, der freien Enzyklopädie. Dort findet sich neben einer Übersicht der Autoren die Möglichkeit, den Original-Text des Artikels Ruby (Programmiersprache) zu editieren.
Die Texte von Wikipedia und dieser Seite stehen unter der GNU Free Documentation License.]
<<Zurück |
Zur Startseite |
Impressum |
Zum Beginn dieser Seite
|
|
|
|