Modulbeschreibung

Programmieren 2

Kurzzeichen:
M_MAS-SE_Prog2
Unterrichtssprache:
Deutsch
ECTS-Credits:
5
Arbeitsaufwand (h):
160
Modulverantwortung:
Prof. Dr. Bläser Luc
Standort (angeboten):
Rapperswil-Jona
Modultyp:
Wahl-Modul für MAS SW Engineering STD_12(Empfohlenes Semester: 2)
Modulbewertung:
Note von 1 - 6

Leistungsnachweise und deren Gewichtung

Während der Unterrichtsphase:
Bewertungsart:
Note von 1 - 6

Inhalte

Angestrebte Lernergebnisse (Abschlusskompetenzen):
  • Sie kennen die grundlegenden Konzepte des funktionalen Programmier-Paradigmas.

Vermittelte Kompetenz

  • Sie lernen eine andere Sichtweise auf die Programmierung (funktional anstelle von OO)
  • Sie können einfache Probleme mithilfe der Datentypanalyse-Funktionsanalyse Methode lösen.
Modul- und Lerninhalt:
  • Programmier-Paradigmen
  • Kennzeichen der funktionalen Programmierung und funktionaler Programmiersprachen
  • Funktionen und Daten als gleichberechtigte Konstrukte; Immutability
  • Funktionen höherer Ordnung (Funktionen als Parameter, Funktionen als Rückgabewerte, partielle Funktionen)
  • Unendliche Datenstrukturen und Lazy Evaluation
  • Kontrollstrukturen in funktionalen Programmiersprachen (Rekursion, Pattern Matching, u. ä.)
  • Methodische Unterschiede zur OO und imperativem Projektabwicklung: EVA und Datentyp-basierte Spezifikation.
Lehr- und Lernmethoden:
  • Interaktives Arbeiten in kleinen Gruppen (2-er Team) und Besprechungen im Plenum
  • Gemischter Unterricht: aktives Arbeiten am eigenen Laptop (Übungen und Vorlesung werden gemischt).
Lehrmittel/-materialien:
  • Folien, Skripts und Beispiellösungen, Kurzanleitungen, Arbeitsblätter und Lösungshinweise

Internetlinks:

  • Haskell: https://www.haskell.org/
  • Haskell Platform: https://www.haskell.org/platform/
  • Einführung: https://wiki.haskell.org/Haskell_in_5_Schritte

Tools

  • Java Interpreter (Java 8 und höher)
  • Haskell Interpreter (GHC Haskell Platform; MacHaskell)
  • Text-Editor: EMACS, VIM, Notepad++ oder Sublime Text mit Syntax highlighting