DSL Engineering

Modulinformationen

Domänenspezifische Sprachen sind formale Sprachen, die speziell für ein bestimmtes Anwendungsgebiet, die "Domäne", entworfen wurden. Sie übernehmen häufig in der Domäne gebräuchliche Notationen und grenzen sich so von Allzwecksprachen wie beispielsweise Java oder UML ab. Damit soll es Domänenexpertinnen leichter gemacht werden, sich in einer für ihre Zwecke nützlichen Sprache auszutauschen.
 
Damit domänenspezifische Sprachen wirklich nützlich sind, bedürfen sie umfassender Werkzeugunterstützung, wie man sie von allgemeinen Programmier- und Modellierungssprachen her gewohnt ist. Da der Nutzerkreis domänenspezifischer Sprachen im allgemeinen aber kleiner ist, ist es für deren Erfolg wichtig, dass sich diese Werkzeuge mit wenig Aufwand herstellen lassen. Sog. Language workbenches, mit denen integrierte Entwicklungsumgebungen für formale Sprachen relativ leicht entwickelt werden können, gehören daher zur Entwicklung domänenspezifischer Sprachen fest dazu.
 
Dieser leittextgestützte Kurs befasst sich mit dem relativ jungen Thema des Entwurfs und der Werkzeugunterstützung domänenspezifischer Sprachen. Er basiert auf dem Buch DSL Engineering von Markus Voelter. Das Buch ist in verschiedenen Formen über http://voelter.de/dslbook/markusvoelter-dslengineering-1.0.pdf erhältlich und kann vor Belegung des Kurses zur Ansicht heruntergeladen werden (zu empfehlen!).

ECTS10
ArbeitsaufwandBearbeitung der Kurseinheiten: 150 Stunden
Bearbeitung der Übungsaufgaben: 80 Stunden
Nachbereitung und Prüfungsvorbereitung, sowie Prüfung: 70 Stunden
Dauer des Modulsein Semester
Häufigkeit des Modulsin jedem Semester
Anmerkung
Der Basistext muss vor Semesterbeginn beschafft werden. Basistext: M. Voelter: DSL Engineering - Designing, Implementing and Using Domain-Specific Languages, dslbook.org, 2013
 
Das Modul kann letztmalig im WS 2018/19 belegt werden. Eine Prüfungsteilnahme ist nur noch bis einschließlich WS 2019/20 möglich.
Inhaltliche Voraussetzung
Fundierte Programmierkenntnisse, beispielsweise erworben durch Bearbeitung der Kurse 63611 "Einführung in die objektorientierte Programmierung" (01618) oder 63612 "Objektorientierte Programmierung" (01814), sind unabdingbar. Außerdem sind gute Engischkenntnisse unverzichtbar, da der Basistext in englischer Sprache verfasst ist.

Aktuelles Angebot

Prüfungsinformation

[an error occurred while processing this directive]

Download

Ansprechpartner

mathinf.webteam | 12.08.2021