Eintrag kommentierenEintrag bewerten
Dieser Eintrag wurde im Schnitt mit 0 von 5 Punkten bewertet
Glossareintrag
Action Language
Glossar:6426
Externe Quellen zum Thema NEU: Externe Quellen zum Thema suchen 
Erläuterung
Action Languages dienen dazu die Objekte zur Laufzeit zu "verwalten". Diese Verwaltung betrifft Möglichkeiten (basierend auf den UML Action Semantics - Semantiken deswegen, weil hier keine Syntax sondern "nur" eine Semantik von bestimmten Ausdrücken definiert ist).

  • zur Erstellung und Löschung von Objekten,
  • zum Auslesen und Setzen von Werten,
  • zur Selektion von Objekten oder auch
  • zur Erstellung und Auflösung von Verbindungen (Links) zwischen Objekten.
Beispiele für Action Semantics sind den OMG Spezifikation (s.o.) zu entnehmen. Da diese momentan jedoch nur eine Menge von möglichen Vorschlägen enthalten wird an dieser Stelle auf eine weitere Konkretisierung verzichtet. Spätestens in der 2.0 Spezifikation der Unified Modeling Language sollte sich dies jedoch geändert haben.
Grundsätzlich könnten hierfür auch existierende Sprachen genutzt werden, wie z.B. Java oder C++, allerdings sprechen einige Punkte dagegen, wie:

  • Plattformabhängigkeit - Dies wäre allerdings noch mit Hilfe von sog. "Crosscompilern", welche eine Programmiersprache in eine andere übersetzen lösbar, obwohl es einfacher (im Sinne von weniger) sein dürfte von einer Action Language Übersetzer für andere Sprachen zu schreiben als Übersetzer zwischen den einzelnen Sprachen zu schreiben.
  • Mangelnder Abstraktionsgrad - Dies kann u.a. Datentypen, wie Pointer etc. in C++ betreffen. Diese binden die Sprache häufig direkt an eine bestimmte Plattform. Aber auch die zur Verwendung kommenden Operationen sollten nicht an eine bestimme Programmiersprache gebunden sein, wie z.B. bestimmte APIs (Applikation Programming Interface - Schnittstellen für die Applikationsprogrammierung) in Java (für Netzwerkdienste oder sogar die Oberflächenprogrammierung).
  • Bestimmte Operationen, die nicht in konkreten Programmiersprachen enthalten sind, wie z.B. die zur Bindungserstellung zwischen oder auch zur Reclassifikation von Objekten. Dies in bestehende Programmiersprachen einzufügen würde wenig sinnvoll sein, da diese Konstrukte i.d.R. durch geeignete Compiler automatisch mit erstellt werden. Eine Action Language liegt allerdings auf einem höheren Abstraktionsniveau und braucht daher häufig solche Möglichkeiten.
Daher haben Action Languages durchaus ihre Relevanz gegenüber "normalen" Programmiersprachen und können - gerade im Hinblick auf die Ausführbarkeit von UML-Modellen - wichtige Informationen liefern, da sie im Gegensatz zu Klassenmodellen Objekte zur Laufzeit betrachten. So läßt sich bspw. in einem Klassendiagramm nicht direkt die Information modellieren, dass zwei Klassen, die miteinander direkt und indirekt (über eine dritte Klasse) verbunden sind ein bestimmtes Attribut der Verbindungsklasse gleichmassen gesetzt haben müssen, da in Klassendiagrammen keine Möglichkeit existiert die Instanzen der Klassen zur Laufzeit abzufragen und zu überprüfen.

Externe Quellen zum Thema NEU: Externe Quellen zum Thema suchen 
 Eintrag kommentieren 
 Eintrag bewerten 
Zu dieser Seite wurden noch keine Kommentare oder Bewertungen abgegeben.
 
Zum Seitenanfang Top Drucken Impressum AGB
Home

VSEK ©2001-2018