homeUnix & Internet Unix & Shell-Programmierung: Spracheigenschaften Prof. Dr. Uwe Schmidt FH Wedel

Spracheigenschaften

weiter

weiter

Ruby Werbebotschaften

Marketing Aussagen ...
von Yukihiro Matsumoto
 
aus /usr/share/doc/ruby1.8-examples/README
What's Ruby
Ruby is the interpreted scripting language for quick and easy object-oriented programming.
 
It has many features to process text files and to do system management tasks (as in Perl).
 
It is simple, straight-forward, and extensible.
Features of Ruby
Simple Syntax
*Normal* Object-Oriented features(ex. class, method calls)
*Advanced* Object-Oriented features(ex. Mix-in, Singleton-method)
Operator Overloading
Exception Handling
Iterators and Closures
Garbage Collection
Dynamic Loading of Object files(on some architecture)
Highly Portable(works on many UNIX machines, and on DOS, Windows, Mac, BeOS etc.)
?
... und was trifft davon zu?

weiter

Verarbeitungsmodell

Objektorientiert
Ruby ist objektorientiert
Alle Werte werden durch Objekte repräsentiert
weiter
?
Was ist ein Objekt?
Was ist der Unterschied zwischen einem Objekt und einem Wert?
weiter
Dynamisch
Die Menge der auf ein Objekt anwendbaren Methoden kann zur Laufzeit verändert werden
weiter
Variablen
enthalten einen Verweis (Referenz) auf ein Objekt
 
x.object_id
weiter
Variablen
sind nicht typisiert
eine Variable kann beliebige Referenzen auf beliebige Objekte aufnehmen
weiter
Initialisierung
Variablen werden, wenn sie nicht explizit initialisiert werden, mit einer Referenz auf ein Spezialobjekt nil initialisiert.
weiter
Objekt
Ein Objekt wird eindeutig durch eine Referenz identifiziert.
weiter
Zustand
Objekte besitzen Instanz-Variablen, in diesen wird der Zustand gespeichert
weiter
Methoden
Objekte besitzen Methoden.
Diese arbeiten auf den Instanz-Variablen: Lesen, Schreiben, Verändern
weiter
Typ
Ein Objekt besitzt einen Typ
 
Der Typ eines Objekts wird durch eine Referenz auf ein Objekt vom Typ Class beschrieben.
 
x.class
weiter
Klassen
Class Objekte werden durch Klassendefinitionen erzeugt
 
class X
  def initialize()
    @x1 = 0
  end
  def x1
    @x1
  end
  def x1=(v)
    @x1=v
  end
end
weiter
Class Objekte
enthalten
.1
die Methoden, die auf einem Objekt arbeiten können
.2
sind vom Typ Class,
d.h. sie besitzen eine Referenz auf ein Class-Objekt
.3
besitzen eine Referenz auf eine Oberklasse.
Diese Klasse ist die beerbte Klasse
 
x.class.superclass
X.superclass
weiter

Letzte Änderung: 14.02.2012
© Prof. Dr. Uwe Schmidt
Prof. Dr. Uwe Schmidt FH Wedel