Veranstaltungsarten (SWS)
Vorlesung: 2 │ Übung: 2 │ Praktikum: 0 │ Seminar: 0
Prüfungsnummer: ZKD 41016
Lehrform:

 

Sprache: Englisch
Turnus: SS
ECTS: 6
Prüfungsleistung Klausur (120 min.)
zugeordnete Studiengänge
zugeordnete Personen
zugeordnete Module
Informationen
Beschreibung:

Für die problembezogene Beurteilung von Programmiersprachen und operationalen Beschreibungen ist es nicht hinreichend eine oder auch zwei Programmiersprachen gut zu kennen. Vielmehr geht es darum, auch Meta-Konzepte zu erwerben, die es erlauben, die Eigenschaften von Programmiersprachen zu vergleichen und einzuschätzen. Hierzu existiert eine reichhaltige Literatur, die in dieser Veranstaltung zu einem Grundkurs kondensiert wird. Dabei geht es auch um die Entwicklung einer Metasprache für die informatische Fachkommunikation, speziell im Hinblick auf Implementierungstechniken.
Inhalte im Einzelnen:
- Entwicklung von Programmiersprachen im historischen Überblick
- Typkonzepte, Variablen und Werte
- Ausdrücke und Anweisungen
- Prozedurale und funktionale Abstraktion
- Modularisierungskonzepte und Kapselung
- Polymorphismus, Vererbung und dynamische Bindung
- Spezifische Programmierkonzepte für Nebenläufigkeit und Verteilung
- Logische Programmierung

Lernziele:

Ziel der Veranstaltung ist es, folgende Fähigkeiten auszubilden:
- Beurteilung von Programmiersprachen vom höheren Standpunkt,
- Befähigung zur problemadäquaten Auswahl einer Programmiersprache,
- Verbesserung der Kommunikations- und Reflexionsfähigkeit beim Programmieren/Implementieren.
- Präsentation/Diskussion von Beispielaufgaben in den Übungen

Literatur:

- Sebesta: Concepts of Programming Languages (6th Ed., Addison-Wesley, 2003)
- Wilson/Clark: Comparative Programming Languages (3rd Ed., Addison-Wesley, 2001)
- D. Watt: Programmiersprachen – Konzepte und Paradigmen (Hanser, 1996)

Vorleistung:
Infolink:
Bemerkung:
Description:

In order to judge the problem related adequacy of programming languages and operational representations it is not sufficient to know one or two programming languages more or less well. Beyond that, it is important to acquire meta level concepts which allow for comparing and assessing relevant features of programming languages. There is rich literature about this perspective, which is condensed into this basic course. Also, the course deasl with developing a meta language for comuter science communication, especially with respect to implementation issues.

Contents:
- Historical survey of programming language development
- Type systems, variables and values
- Expressions and commands
- Procedural and functional abstraction
- Polymorphism, inheritance and dynamic binding
- Specific constructs for concurrency and distribution
- Logical programming

Learning Targets:

The goal of this lecture is to train the following competences:
- Evaluation/judgment of programming languages
- Ability to choose a programming language suitable for the problem solving
- Improvement of communication- and reflection skills within the programming/implementation
- Presentation/discussion of example problems in the exercises

Literature:

- Sebesta: Concepts of Programming Languages (6th Ed., Addison-Wesley, 2003)
- Wilson/Clark: Comparative Programming Languages (3rd Ed., Addison-Wesley, 2001)
- D. Watt: Programmiersprachen – Konzepte und Paradigmen (Hanser, 1996)

Pre-Qualifications:
Info Link:
Notice: