Grundlagen der Programmierung
Vorschlag Menzel
Umfang: 4 SWS Vorlesung + 2 SWS Übung
Voraussetzungen: keine
Lernziele
- Kennenlernen von grundlegenden Konzepten, Methoden und Werkzeugen der Programmentwicklung
- Erwerben der Fähigkeit zum selbständigen und systematischen Lösen programmiertechnischer Aufgaben
Lehrinhalte
im Wesentlichen Inhalte von ex-P2
mit einer deutlichen Verstärkung der elementaren Konzepte (Datentypen, Anweisungen,
Steuerkonstrukte) und Erweiterung um Rekursion und ereignisgesteuerte Programmierung
- Grundkonzepte der zustandsorientierten Programmierung: Variablen- und Zustandsbegriff, Anweisung, Objekt und Wert, Ablaufsteuerung, axiomatische Basis der zustandsorientierten Programmierung, operationale Semantik
- Typkonzept der zustandsorientierten Programmierung: Typbegriff, einfache und zusammengesetzte Typen, vorgegebene und benutzerdefinierte Typen, Verbund und Reihung, Referenztypen, Prozedurtypen, polymorphe Typsysteme
- Abstraktionsmechanismen: prozedurale Abstraktion, Datenabstraktion, abstrakte Datentypen
- ereignisgesteuerte Programmierung: Interprozesskommunikation, Client-Server-Architektur, Grundlagen verteilter Systeme
- Modulkonzept: Sichtbarkeit und Namensräume, Kapselung, Geheimnisprinzip, Gestaltung von Schnittstellen, Objekt- und Typmodul, Vertragsmodell, Schnittstellen und Zusicherungen, Zusicherungen und Ausnahmebehandlung
- Konzepte der objektorientierten Modellierung: Typ und Klasse, Vererbung, objektorientierte Architektur
- Konzepte und Implementierung von Programmiersprachen: Namen und Namensräume, Typprüfung, Bindungsmechanismen; Übersetzen, Binden und Laden; Laufzeitsystem, Programmierwerkzeuge und -umgebungen
- rekursive Datenstrukturen und ihre Verarbeitung: Listen, Bäume, Graphen; Typen rekursiver Programme und ihre Transformation
--
WolfgangMenzel --
24 Sep 2003