in English auf Deutsch

Eigenschaften und Besonderheiten von Ruby

von Michael Neumann

 

Interpretiert

Objekt-orientiert

Portabel

Untypisiert

Automatische Speicherverwaltung (Garbage Collection)

Einfache, übersichtliche Syntax

Fortgeschrittene OO-Konzepte und andere Features

Sonstiges

 


Interpretiert

Vorteil:

Nachteil:


Objekt-orientiert

In Ruby ist alles ein Objekt (wie in Smalltalk). Ruby bietet keine Mehrfachvererbung, dies ist jedoch durch Mix-in möglich.


Portabel

Ruby ist hochgradig portabel, so daß ein und dasselbe Ruby-Programm ohne Änderungen unter UNIX, Windows, DOS, Mac, BeOS usw. läuft. Das gilt natürlich nur solange keine Plattform-spezifischen Module benutzt werden, wie z.B. einige GUIs für UNIX oder WinGKR (Win32 GUI Kit for Ruby).

Vorteil:


Untypisiert

Die Variablen in Ruby haben keinen Typ, wie z.B. in Smalltalk, BASIC oder Python. Variablen sind nur Platzhalter, Daten dagegen besitzen einen Typ. In C++ oder Pascal besitzen Variablen einen Typ (z.B. int / Integer), die Daten im Hauptspeicher dagen jedoch besitzen keinen, d.h. man kann nicht erkennen ob es sich um einen String oder Integer handelt. In C++ oder Pascal werden die Typen zur Compile-Time geprüft, in Ruby dagegen erst zur Laufzeit, d.h. es wird erst bei einem Methodenaufruf festgestellt, ob das Objekt die Nachricht (Methode) versteht.
Variablen müssen auch nicht deklariert werden, sondern sie werden durch die erste Benutzung erzeugt.


Automatische Speicherverwaltung (Garbage Collection)

In Ruby muß man keinen Speicher freigeben (wie in Pascal / C++ mit dispose / free). Nicht mehr benötigter Speicher, d.h. Speicherstellen, auf den keine Variable mehr zeigt, wird automatisch vom Garbage Collector freigegeben.

Vorteil:

Nachteil:


Einfache, übersichtliche Syntax

Ruby basiert u.a. auf der Syntax von Eiffel (Ada)

Ruby bietet oft zusätzlich eine C++ ähnliche Schreibweise


Fortgeschrittene OO-Konzepte und andere Features


Sonstiges


 

Copyright (c) 1999 by Michael Neumann (neumann@s-direktnet.de)
letzte Änderung: 14.01.2001