Beschreibung
Inhaltsangabe1 Einleitung.- 1.1 Die Terminologie.- 1.2 Die Programmbeispiele.- 1.3 Die Übungsaufgaben.- 1.4 Ada 9X.- 2 Der Werdegang von Ada.- 2.1 Die Software-Krise.- 2.2 Ein Weg aus der Krise.- 2.3 Die Suche nach einer Sprache.- 2.4 Verbesserung und Standardisierung.- 2.5 Chronologischer Überblick.- 2.6 Was ist Validierung?.- 2.7 Die Entwicklungsumgebung.- 3 Erfolgreiches Programmieren und Ada.- 3.1 Abstraktion.- 3.1.1 Abstraktion von Daten.- 3.1.2 Abstraktion von Aktionen.- 3.2 Programmentwurf.- 3.3 Lesbarkeit und Transparenz.- 3.4 Modularisierung und getrennte Übersetzung.- 3.5 Spezifikation, Schnittstelle, Implementierung.- 3.6 Geheimnisprinzip.- 3.7 Arbeitsteilung.- 3.8 Zuverlässigkeit.- 3.8.1 Strenge Typisierung.- 3.8.2 Laufzeitfehlerkonzept.- 3.9 Wiederverwendbarkeit.- 3.10 Wartbarkeit.- 3.11 Portierbarkeit.- 3.12 Maschinennahes Programmieren.- 3.13 Parallele Prozesse und Echtzeit.- 3.14 Sprachübersicht.- 4 Ein einfaches Ada-Programm.- 4.1 Bemerkungen zur Syntax.- 5 Anweisungen.- 5.1 Einfache Anweisungen.- 5.2 Bedingte Anweisungen.- 5.2.1 Die IF-Anweisung.- 5.2.2 Die CASE-Anweisung.- 5.3 LOOP-Anweisungen.- 5.4 Blockanweisungen.- 5.5 Übung 1: Anweisungen.- 6 Unterprogramme.- 6.1 Unterprogramme und ihre Schnittstellen.- 6.2 Die Implementierung eines Unterprogramms.- 6.3 Lokale Unterprogramme.- 6.4 Stummel und Untereinheiten.- 6.5 Explizite Unterprogrammvereinbarungen.- 6.6 Verdecken und Überladen.- 6.7 Bibliotheksunterprogramme.- 6.8 Unterprogramme und das Geheimnisprinzip.- 6.9 Spezifikation des Vokabel-Trainers.- 6.9.1 Funktionaler Überblick.- 6.9.2 Funktionale Beschreibung.- 6.10 Übung 2: Entwurf eines Ada-Programms.- 6.10.1 Objekte, Aktionen und Eigenschaften.- 6.10.2 Was bezieht sich auf welches Objekt?.- 6.10.3 Formulierung in Ada.- 6.11 Lösung zur Entwurfsübung.- 6.11.1 Objekte, Aktionen und Eigenschaften.- 6.11.2 Ada-Darstellung der Objekte.- 6.11.3 Ada-Darstellung der Aktionen/Eigenschaften.- 6.12 Übung 3: Aufruf von Unterprogrammen.- 7 Daten: Typen und Objekte.- 7.1 Aufzählungstypen.- 7.2 Operatoren.- 7.3 Der Typ boolean.- 7.4 ARRAY-Typen.- 7.4.1 Uneingeschränkte ARRAY-Typen.- 7.4.2 Aggregate und Ausschnitte.- 7.4.3 Mehrdimensionale ARRAYs.- 7.4.4 Attribute und Operatoren.- 7.5 RECORD-Typen.- 7.5.1 RECORDS mit Variantenteil.- 7.5.2 Mehr RECORD-Typen mit Diskriminanten.- 7.5.3 Diskriminanten mit Vorbesetzung.- 7.6 ACCESS-Typen.- 7.7 Verkettete Strukturen.- 7.8 Numerische Typen.- 7.8.1 Gleitpunkttypen.- 7.8.2 Festpunkttypen.- 7.9 Abgeleitete Typen, Typkonvertierung.- 7.10 Übung 4: Typen und Unterprogramme.- 8 Pakete.- 8.1 Ein einfaches Paket.- 8.2 Die USE-Klausel.- 8.3 Der Aufbau eines Pakets.- 8.4 Ein Paket mit Implementierungsdetails.- 8.4.1 Anwendung des Pakets.- 8.4.2 Der Paketrumpf.- 8.5 Ein weiteres Paketbeispiel.- 8.6 Private Typen.- 8.7 LIMITED PRIVATE Typen.- 8.8 PACKAGE liste mit privatem Typ.- 8.9 Paket mit Anweisungen.- 8.10 Übung 5: Anwendung eines Pakets.- 9 Getrennte Übersetzung.- 9.1 Die Bibliothek.- 9.2 Übersetzungseinheiten.- 9.3 Abhängigkeiten zwischen Einheiten.- 9.4 Ein Beispiel.- 9.4.1 Eine Alternativstruktur.- 9.5 Modulare Struktnr eines Ada-Programms.- 9.6 Übung 6: Sichtbarkeit im Ada-Programm.- 9.7 Übung 7: Struktur des Vokabel-Trainers.- 9.8 Lösung zu Übung 6.- 9.9 Lösung zu Übung 7.- 10 Abarbeitung.- 10.1 Lokale Abarbeitungsfehler.- 10.2 Abarbeitung von Bibliothekseinheiten.- 10.3 PRAGMA elaborate.- 11 Ein-/Ausgabe.- 11.1 Textausgabe.- 11.2 Textausgabe von Zahlen und Aufzählungswerten.- 11.3 Portable benutzerdefinierte Ein-/Ausgabe.- 11.4 Texteingabe.- 11.5 Texteingabe von Zahlen und Aufzählungswerten.- 11.6 Übung 8: Text-Ein-/Ausgabe.- 11.7 Umgang mit Dateien.- 11.8 Übung 9: Ein-/Ausgabe im internen Format.- 12 Schablonen.- 12.1 Eine einfache generische Prozedur.- 12.2 Ausprägungen als Bibliothekseinheiten.- 12.3 Die Übersetzungsreihenfolge bei Schablonen.- 12.4 PACKAGE liste als Schablone.- 12.5 Ein generisches Mengenpaket.- 12.6 Eine generische formale Prozedur.- 12.7 Eine generische formale Funk