Glossar
  Ziffern, Zeichen | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z
 
   
D Dangling References -
Siehe hängende Zeiger.

Darstellungsklausel -
Eine Darstellungsklausel (representation clause) gibt dem Übersetzer Hinweise für die Auswahl der Abbildung eines Typs, eines Objekts oder eines Prozesses auf die zugrundeliegende Maschine, die das Programm ausführt. In gewissen Fällen wird die Abbildung durch Darstellungsklauseln vollständig spezifiziert, in anderen liefern sie Kriterien für die Auswahl einer Abbildung.

Datenstruktur -
Die Bezeichnung Datenstruktur wird oft gleichbedeutend mit Datentyp verwendet. Im engeren Sinne versteht man unter einer Datenstruktur jedoch den Aufbau von Wertebereichen

aus elementaren Wertebereichen:
- ganzen Zahlen,
- reellen Zahlen,
- Wahrheitswerten,
- der Menge der Zeichen und
- selbstdefinierten endlichen Mengen und Teilmengen hiervonmit Hilfe von Konstruktoren:
- Aggregation,
- Generalisation und
- Rekursionum zusammengesetzte Datentypen zu definieren.
Datenstrukturen sind z. B. Bäume, Listen oder Stapel.
Eine Datenstruktur ist nicht mit einem abstrakten Datentyp zu verwechseln.

Datentyp - / Datentypen -
Unter einem Datentyp versteht man die Zusammenfassung von Wertebereichen und Operationen zu einer Einheit die einen Namen erhält.

Deallokator -
Ein Deallokator ist eine Instantiierung der generischen Prozedur unchecked_deallocation. Gegenteil: Allokator.
Beispiel:
with ada.unchecked_deallocation;
...
type X is ...;
type X_Zeiger is access X;
Z : X_Zeiger;
procedure Gib_Frei is new Unchecked_Deallocation (X, X_Zeiger);
begin
Z := new X; -- Allozierung eines Objektes vom Typ X.
Gib_Frei (Z); -- Deallozierung eines Objektes vom Typ X.
...

Definition -
Eine Definition legt die Elemente und den Umfang eines Typs fest.

Deklaration -
Eine Deklaration ist eine Anweisung, die ein oder mehrere benannte Objekte eines bestimmten Typs anlegt.

Denormalisierte Zahlen -
Eine von fünf Klassen von Gleitpunktzahlen. Dies sind sehr kleine Zahlen, die auch mit dem kleinsten Exponenten für normalisierte Zahlen nicht mehr dargestellt werden können. Bevor eine Zahl nur noch als 0.0 dargestellt wird, kann sie noch b-mal halbiert werden (b - Anzahl der Binärstellen). Dabei geht jedesmal eine Binärstelle an Genauigkeit verloren, da Nullen rechts des Binärpunktes auftauchen.

Dependents -
Siehe abhängige Einheiten.

Destruktor (OOP) -
In Ada gibt es Destruktoren nur für Vererbungen aus dem vordefinierten Typ controlled. Der Name des Destruktors heißt Finalize, er kann in dem abgeleiteten Typ überladen werden.
Finalize oder eine Überladung kommt automatisch zur Ausführung, wenn ein Objekt dieses (oder eines vererbten) Typs beendet wird. Ein Objekt wird beendet, wenn dieses Objekt das Ziel einer Zuweisung ist (es wird überschrieben), wenn der Geltungsbereich (scope) dieses Objektes (als lokale Variable) verlassen wird oder wenn das Objekt dynamisch alloziert ist und mit einem Deallokator freigegeben wird.

Dezimale Festpunktzahlen -
Zahlen aus einer speziellen Klasse von Festpunkttypen.

Direct Dependents -
Siehe direkt abhängige Einheiten.

Direct Supporters -
Siehe direkt unterstützende Einheiten.

Direkt abhängige Einheiten -
Das sind alle Einheiten, die direkt von einer gegebenen Einheit abhängen. Die direkt abhängigen Einheiten sind alle Einheiten, bei denen die betrachtete Einheit in der With-Klausel direkt sichtbar gemacht wird.

Direkt unterstützende Einheiten -
Das sind alle Einheiten, von denen eine gegebene Einheit direkt abhängt. Die direkt unterstützenden Einheiten, sind alle Einheiten in der With-Klausel der betrachteten Einheit.

Direkte Sichtbarkeit -
Siehe Sichtbarkeit.

Diskreter Typ - / Diskrete Typen -
Ein diskreter Typ ist ein Typ mit einer geordneten Menge wohlunterschiedener Werte. Die diskreten Typen sind Aufzählungs- und ganzzahlige Typen. Diskrete Typen werden zur Indizierung, für Wiederholungsvorschriften und für Auswahlen in Case-Anweisungen und in Varianten von Verbundtypen benutzt.

Diskriminante - / Diskriminanten -
Spezielle Komponenten von Verbundtypen, mit denen die Größe interner Reihungs- oder Verbundkomponenten oder die Struktur des Verbundes festgelegt werden kann. Diskriminanten können von einem diskreten oder von einem Zugriffstyp sein. Auch Prozesse und geschützte Typen können Diskriminanten enthalten.

Diskriminanteneinschränkung -
Eine Diskriminanteneinschränkung eines Verbundtyps oder eines privaten Typs spezifiziert einen Wert für jede Diskriminante des Typs.

Dynamische Bindung -
"Dynamische Bindung" bedeutet, daß, wenn zur Übersetzungszeit nicht feststeht, welches von mehreren gleichnamigen Unterprogrammen (überladenes Unterprogramm) anzusprechen ist, dieses zur Laufzeit ausgewählt bzw. zugeordnet (dispatched) wird. Dynamische Bindung kann in Ada nur bezüglich Objekten, die vom einem erweiterbaren Typ (tagged) sind, verwendet werden.
Außerdem müssen alle diese Unterprogramme zu einer Klassenhierarchie gehören. Zur Laufzeit wird eine Zusatzinformation des Objekts (tag) ausgewertet, die Aufschluß über die Klasse des Objekts innerhalb der Klassenhierarchie gibt, so daß das zugehörige Unterprogramm aufgerufen werden kann.

Dynamischer Bindevorgang -
Das dynamische Binden von Aufrufpartnern kann entweder durch sogenannte Zugriffstypen auf Unterprogramme ("access-to-subprogram"-Typen) oder Zugriffstypen auf klassenweite Typen ("access-to-class-wide-tagged"-Typen) realisiert werden. Diese Zeigertypen können z. B. in einem "Remote Call Interface"-Paket oder "Remote Types"-Paket deklariert werden. Beim Programmablauf resultiert jede Dereferenzierung eines derartigen Zeigertyps in einen RPC-Aufruf. Die Zuordnung der Server-Partition ist deshalb erst zur Laufzeit notwendig. Erst diese Eigenschaft erlaubt die Programmierung von fehlertoleranten Systemen mit der Neuzuordnung von Server-Partitionen im Falle von defekten bzw. ausgefallenen Server-Partionen.

Dynamischer Scheduling -Algorithmus -
Erfolgt die Berechnung der Bearbeitungsreihenfolge einer vorgegebenen Prozeßmenge während des Programmlaufs, so spricht man von einem dynamischen Scheduling-Algorithmus (run-time scheduling oder on-line scheduling). Dynamische Scheduling-Algorithmen werden weiter klassifiziert nach der Unterbrechbarkeit (pre-emptive scheduling) bzw. Nichtunterbrechbarkeit (non-pre-emptive scheduling) der Prozesse.


 

 zurück Ada Tour - Dokumentation  © 2003 Förderverein Ada Deutschland e.V.