Smalltalk

Aus expecco Wiki (Version 2.x)
Wechseln zu: Navigation, Suche

Smalltalk

Smalltalk ist eine Programmiersprache, welche kompromisslos objektorientiert ist. Das bedeutet:

  • keine native Typen. Alle Objekte incklusive Integers, Floats, Strings, Characters sind first-Class Objekte.
  • sämtliche Operationen auf Objekte werden durch Methoden ihrer Klasse definiert und implementiert. Alle Klassen können erweitert werden (inkl. Integer, String, etc.). Dies im Gegensatz zu Java, wo dies bei vielen wichtigen Klassen nicht möglich ist.
  • Klassen selbst sind Objekte und werden ihrerseits durch Metaklassen definiert. Auch deren Protokol (Methoden) können jederzeit erweitert werden. Auch dies ist in Java nicht gegeben.
  • Metaklassen implementieren denselben Vererbungsmechanismus wie normale Objektinstanzen. Klassenmethoden (insbes. "new") können redefiniert werden (im Gegensatz zu Java, wo dies nicht möglich ist).
  • Exceptions sind "proceedable". D.h. ein Exception Handler kann die Situation reparieren und mit der Ausführung fortfahren. Z.B. kann eine fehlende Datei in einem OpenError-handler nachgeladen werden und (transparent für den Dateihandling Code) mit der Ausführung fortgefahren werden. Dies ist außer in Smalltalk in keiner anderen Programmiersprache möglich.
  • Smalltalk unterstützt echte Closures (Lambdas), und die Klassenbibliothek nutzt diese intensiv. Insbesondere die Collectionklassen implementieren viele Operationen damit (do: / select: / collect: / map: / find: etc.)
  • Änderungen sind auf Methodenebene möglich und werden sofort (im laufenden Betrieb) mit dem nächsten Aufruf aktiv. Es ist nicht notwendig, das Programm zu stoppen oder gar neu zu binden.
  • Änderungen sind im angehaltenen Zustand (z.B. im Debugger) möglich. Methodenaufrufe könenn restarted werden und somit die Änderung im Debugger sofort getestet werden.
  • Die Übersetzung erfolgt in 2 Stufen, zunächst in einen internen Bytecode, welcher beum ersten Aufruf in Maschinencode übersetzt wird (sog. Jitter oder dynamisch Übersetzung).

Smalltalk/X

Smalltalk/X ist eine vollständige Implementierung der Programmiersprache Smalltalk, mit umfangreicher Klassenbibliothek und grafischer Entwicklungsumgebung

Die Sprache beinhaltet modernste Konzepte kombiniert mit inkrementeller Übersetzung. Daraus resultieren extrem kurze turn-around-Zeiten und es erlaubt das Programmieren während das Programm läuft. Das macht Smalltalk/X zu einer der produktivsten Plattformen für die Projektentwicklung. Smalltalk/X ist schnell, sicher, stabil und leistungsfähig, stark in kritischen Projekten, im langjährigen Einsatz sowohl bei eXept als auch bei vielen Industriekunden und damit eine hervorragende Plattform zur Entwicklung von performanten und robusten Anwendungen.

Durch klicken auf den Link "Alles über Smalltalk" werden Sie auf eine Seite geleitet, welche Ihnen weitere Details zu Smalltalk, allgemeine Informationen, Tool Information, einen Keyword Index sowie einen System Overview liefern: Alles über Smalltalk

Smalltalk und eXept

Smalltalk/X wurde komplett in unserem Haus entwickelt und wird ständig erweitert und gepflegt. Es stellt die Platform für alle unsere Produkte dar. Die Vorzüge von Smalltalk/X in Verbindung mit dem umfassenden Know-how unseres Teams machen eXept schnell und flexibel bei Entwicklung der technologisch führenden Testautomatisierungslösung expecco.



Copyright © 2014-2018 eXept Software AG