Automatische Speicherverwaltung (Garbage Collection)
Einfache, übersichtliche Syntax
Fortgeschrittene OO-Konzepte und andere Features
Vorteil:
Nachteil:
In Ruby ist alles ein Objekt (wie in Smalltalk). Ruby bietet keine Mehrfachvererbung, dies ist jedoch durch Mix-in möglich.
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:
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
Copyright (c) 1999 by Michael Neumann (neumann@s-direktnet.de) letzte Änderung: 14.01.2001