Funktionale Programmierung

Funktionale Programmierung

SWS 6
ECTS 8
Sprache(n) Deutsch (Standard)
Englisch
Lehrform SU mit Praktikum
Angebot nach Ankündigung
Aufwand

Präsenzstudium: ca. 60 Std., Eigenstudium: ca. 90 Std.

Voraussetzungen

Softwareentwicklung I (IF-I-B-104), Softwareentwicklung II (IF-I-B-204).

Ziele

LERNZIELE (Welche Kenntnisse vermittelt die Veranstaltung?)

Die Studierenden lernen die Konzepte der funktionalen Programmierung anhand der Programmiersprache Haskell kennen und anwenden, um sie in ihrer späteren beruflichen Tätigkeit in einer funktionalen Sprache oder im Rahmen einer imperativen Sprache mit funktionalen Anteilen sinnvoll anwenden zu können.

FACH- & METHODENKOMPETENZ (Was erlernen die Studierenden, was können sie im Anschluss anwenden, analysieren, evaluieren, kreieren?)

Die Studierenden sind in der Lage,

  • die Konzepte der funktionalen Programmierung zu erläutern,
  • Programme in der rein funktionalen Programmiersprache zu implementieren,
  • funktionaler Konzepte in Mainstream-Programmiersprachen zu erkennen und sinnvoll zu nutzen und
  • funktionaler Konzepte zur parallelen und nebenläufigen Programmierung aufzuzählen.

ÜBERFACHLICHE KOMPETENZ (Was erfahren und erlernen die Studierenden über das Fachliche hinaus?)

Teamarbeit: Die Studierenden entwickeln ein Anwendungsprogramm in Haskell in Kleingruppen.

Inhalt

Die Grundlagen und Konzepte der funktionalen Programmierung werden anhand der rein funktionalen Programmiersprache Haskell eingeführt und erläutert. Behandelte Themen sind dabei mindestens:

  • Lambdas
  • Funktionen höherer Ordnung
  • statische Typisierung
  • Typklassen
  • Funktoren
  • Monaden
  • parallele und nebenläufige Programmierung

In der Veranstaltung werden entsprechende Softwaremodule entwickelt und implementiert.

Medien und Methoden

Tafel, Beamer, Haskell-Plattform auf PC, Livecoding, GitHub Classroom

Literatur
  • Brian O'Sullivan et al., Real World Haskell, O'Reilly, 2008. Online verfügbar unter: http://book.realworldhaskell.org/read/
  • Miran Lipavaca, Learn You a Haskell for Great Good!, No Starch Press, 2011. Online verfügbar unter http://learnyouahaskell.com/chapters
  • Peter Pepper & Petra Hofstedt, Funktionale Programmierung, Springer. 2006.
Zuordnungen Curricula
SPO Fachgruppe Code ab Semester Prüfungsleistungen

IB Version 2010

FWP

IF-WI-B-31-34-140

6

benotete Studienarbeit (40%)
benotete schriftliche Prüfung 90 Minuten (60%)

IF Version 2019

FWP

IF-I-B-F51

6

schriftliche Prüfung

IF Version 2023

FWP

IF-I-B-F51

6

schriftliche Prüfung

WD Version 2022

FWP

951-55-140

6

schriftliche Prüfung

WT Version 2022

FWP

951-55-140

6

schriftliche Prüfung