1. Modulare Software Architektur

Definition:

Ist ein System von Modulen und besteht als solches aus einer Menge von Modulen und Beziehungen zwischen diesen.

Was ist ein Software-Modul?

Ein Software-Modul,

Von den verschiedenen Möglichkeiten der Modulkonstruktion werden die Modultypen Datenmodul und Funktionsmodul zur Realisierung des Programms eingesetzt.

Datenmodule stellen die Datenobjekte und/oder Datentypen bereit. Die Modulkörper der Datenmodule bleiben leer, deshalb alles bleibt sichtbar nichts wird geheim gehalten.

Funktionsmodul haben in der Modulschnittstelle keine Variablen, Konstanten bzw. Variablentypen es werden nur die Exportoperationen aufgelistet. Die Modulschnittstelle verfügt über eine Importschnittstelle die erforderliche Daten importiert z.B. aus anderen Modulen.

Prinzipieller Modulaufbau eines Software-Moduls

Prinzipieller Modulaufbau eines Software-Moduls

2. Abstrakte Datentypen

Definition:

Bei einem ADT sind die Daten und Methoden ohne Bezugnahme auf ihre innere Struktur beschrieben.

Datenabstraktion ist der Übergang von konkreten Datenobjekten zu Klassen äquivalenter Objekte, also die Trennung der Spezifikation eines Datenobjekts von den Details seiner Konstruktion. Ein ADT ist ein Schema zur Bildung geschützter Variablen im Sinne der Kapselung. Bestehend aus dem Namen des Typs, dessen innere Struktur sichtbar ist und der Menge der zulässigen Operationen auf Objekte dieses Typs. Ein abstrakter Datentyp ist kein einzelnes Objekt oder eine bestimmte Variable, sondern der Typ, aus den Objekte oder Variablen erzeugt werden können.

Der Stack

Der Stack ist eine Datenstruktur, bei der der Zugriff nach der LIFO-Methode erfolgt (Last In, First Out). Eine Folge heißt Stapel bzw. Stack, wenn Elemente nur an einem Ende, der Stapelspitze, hinzugefügt oder entfernt werden können.

Operationen des Stacks:

  1. erzeugen (leeren Stapel) - Init oder Create
  2. hinzufügen eines Elements - push(x)
  3. entfernen der Stapelspitze - pop
  4. anzeigen der Stapelspitze - top
  5. Prüfung, ob Stapel leer ist - empty

Die Schlange

Die Schlange ist eine Datenstruktur, bei der die abgelegten Werte in der gleichen Reihenfolge entnommen werden, in der sie eingetragen wurden (FIFO-Methode, First In First Out). Bei einer Schlange werden Daten nur an ihrem Schwanz angehängt und können nur an ihrem Kopf entnommen werden.

Operationen der Schlange:

  1. erzeugen (leere Schlange) - Init oder Create
  2. hinzufügen eines Elements - enqueue(x)
  3. entnehmen eines Elements - dequeue
  4. anzeigen des Kopfes - front
  5. Prüfung, ob Schlange leer ist - empty