Was ist Ruby?

Ruby ist eine objektorientierte Skriptsprache, die ab 1993 von Yukihiro „matz" Matsumoto entwickelt wurde. Im Jahr 1995 stellte er die Version 0.95 der Öffentlichkeit vor. Seitdem wird sie weiterhin von ihm gepflegt und weiterentwickelt.

Daneben gibt es auch andere Gruppen, die Module und Klassenbibliotheken beisteuern — z. B. die Tk-Bibliothek, RubyFX, FTP, CGI und viele andere.

Was kann Ruby?

Mit Ruby lässt sich fast alles machen — vom einfachen Shell-Skript bis hin zum komplexen Fensterprogramm mit grafischer Oberfläche. Einzig die Ausführungsgeschwindigkeit ist, wie bei allen interpretierten Sprachen üblich, nicht so hoch wie bei kompilierten Sprachen (C, C++). Für die meisten Anwendungsfälle ist sie jedoch vollkommen ausreichend.

Wie programmiert man Ruby?

Ruby ist ein Mix der besten Zutaten aus Perl, Smalltalk, Eiffel, Python und anderen Sprachen. Matz wollte eine Sprache, die mächtiger als Perl und objektorientierter als Python ist — das ist ihm gut gelungen.

Ruby ist konsequent auf OOP ausgelegt: Alle Elemente der Sprache sind Objekte. Man kann aber auch gut „konventionell" oder prozedural programmieren — das funktioniert natürlich auch!

Kurzes Beispiel: In Ruby ist sogar eine Zahl ein Objekt, daher kann man direkt Methoden auf ihr aufrufen: 5.times { puts "Ruby!" }
# Klasse definieren
class Tier
  def initialize(name)
    @name = name
  end

  def vorstellen
    puts "Ich bin #{@name}!"
  end
end

# Objekt erzeugen
hund = Tier.new("Bello")
hund.vorstellen   # => Ich bin Bello!

# Enumerable / Blöcke
[1, 2, 3].map { |n| n * 2 }  # => [2, 4, 6]

Wo gibt es Ruby?

Die offizielle Homepage der Sprache ist ruby-lang.org. Dort findet man den Interpreter, die offizielle Dokumentation sowie aktuelle Releases.

Weitere Links zu Ruby-Ressourcen, Tutorials und Tools gibt es auf unserer Links-Seite.

Warum Ruby?

Ruby legt großen Wert auf Lesbarkeit und das Wohlbefinden des Entwicklers. Code in Ruby liest sich oft fast wie natürliche Sprache. Das Prinzip „principle of least surprise" sorgt dafür, dass sich die Sprache so verhält, wie man es erwartet.

Viel Spaß mit selfRUBY! — oPerILaZ u. JoelH