Smalltalk: Unterschied zwischen den Versionen

Aus expecco Wiki (Version 2.x)
Zur Navigation springen Zur Suche springen
(6 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
= Smalltalk =
= Smalltalk =


Smalltalk ist eine Programmiersprache,
== Pakete ==
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.
* [[ SOAP ]]

* [[ SOAP WSDL ]]
* 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=


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

<br/>


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.
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.
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,
=Smalltalk und exept=
welche Ihnen weitere Details zu Smalltalk, allgemeine Informationen, Tool Information, einen Keyword Index sowie einen System Overview liefern: [http://live.exept.de/doc/online/english/TOP.html Alles über Smalltalk]

=Smalltalk und eXept=


Smalltalk/X wurde komplett in unserem Haus entwickelt und wird ständig erweitert und gepflegt. Es stellt die Grundlage für 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.
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.

Version vom 24. April 2018, 09:50 Uhr

Smalltalk[Bearbeiten]

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[Bearbeiten]

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[Bearbeiten]

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-2024 eXept Software AG