STINE
STINE
German
English
Anmelden
Passwort vergessen
Startseite
Bewerbung
Bewerberaccount anlegen
FAQ
Passwort vergessen
Vorlesungsverzeichnis
Vorlesungsverzeichnis
SoSe 25
WiSe 24/25
SoSe 24
WiSe 23/24
Extracurriculare Veranstaltungen
SoSe 25
WiSe 24/25
SoSe 24
WiSe 23/24
Veranstaltungssuche
FAQ
Service
Anmeldephasen
Hilfreiche Links
Kommunikation
Schulungen
Anleitungen
News-Archiv
Über STiNE
Barrierefreiheit
Kontakt
64-145 Praktikum Funktionale Programmierung
Veranstaltungsdetails
Aktion
Lehrende:
David Christopher Mosteller
Veranstaltungsart:
Praktikum
Anzeige im Stundenplan:
Prak Funkt. Prog.
Semesterwochenstunden:
4
Credits:
6,0
Unterrichtssprache:
Deutsch
Min. | Max. Teilnehmerzahl:
- | 40
Anmeldegruppe:
Anmeldegruppe Praktika
Weitere Informationen:
Bei hoher Nachfrage wird eine zweite Praktikumsgruppe eingerichtet. Die Teilnehmenden werden dann beim ersten Veranstaltungstermin (11.6.2021, 10-14 Uhr) auf die zwei Gruppen aufgeteilt. Die Blocktermine sind dann
wie folgt:
1. Gruppe
* 16.8.-19.8., und 23.-26.8., jeweils von 10-17:30 Uhr (mit Pause)
2. Gruppe
* 30.8.-2.9. und 6.9.-9.9., jeweils von 10-17:30 Uhr (mit Pause)
Kommentare/ Inhalte:
In diesem Praktikum üben Sie den funktionalen Entwurf und die Implementierung eines Programms anhand von Beispielen aus der Entwicklung von verteilten Spielen. Sie lernen den Umgang mit Programmbibliotheken und üben die funktionale Programmierung mit Racket. Der Schwerpunkt liegt dabei auf Konzepten der Modellierung und Verteilung unter Verwendung des funktionalen Programmierparadigmas. Zusätzlich können ausgewählte KI-Algorithmen der Spieltheorie in diesem Kurs angewendet werden. Kernaufgabe ist die Entwicklung einer interaktiven Anwendung mit grafischer Benutzungsoberfläche auf Basis eines gemeinsam definierten Ziels. Die Projektarbeit wird in kleinen Teams durchgeführt. Da das Projekt in einer virtuellen Umgebung stattfindet, nutzen wir BigBlueButton für virtuelle Meetings und verschiedene Tools, die unsere verteilte Zusammenarbeit und Programmiertätigkeit unterstützen.
Lernziel:
Kennenlernen der funktionalen Programmierung als Programmierparadigma,
Vertiefung der funktionalen Programmierkenntnisse an praktischen Beispielen,
Programmierung verteilter (Spiele-) und Simulationssysteme,
Arbeit mit Versionsverwaltung, Projektmanagement-Werkzeugen, verteilten Entwicklungsumgebungen,
Übung in projektartiger Arbeitsorganisation.
Vorgehen:
An den ersten Terminen wird es eine Einführung in die funktionale Programmierung mit der Sprache Racket geben. Die Einführung wird begleitet von kleinen Übungsaufgaben und "Fingerübungen", welche die Konzepte der funktionalen Programmierung näherbringen. Anschließend bestimmen die Teilnehmenden je Gruppe ein Spiel, welches sie im Semester implementieren wollen. Gemeinsam werden im Team Ziele und Meilensteine für das Projekt definiert. Die Arbeitsorganisation wird durch das Projektmanagement-Werkzeug Gitlab unterstützt. Der Entwurf der individuellen (Spiele-) Anwendung manifestiert sich in Mockups, Prototypen, Modellen, Spezifikationen. Aufbauend auf dem Entwurf soll eine Implementation des gewählten Spiels erfolgen, sodass selbiges (verteilt) am Rechner gespielt werden kann.
Das Praktikum besteht aus Plenumsdiskussionen über BigBlueButton sowie Arbeit in Kleingruppen, verteilt, am Rechner.
Literatur:
How to Design Programs: An Introduction to Programming and Computing
Matthias Felleisen
MIT Press, 2001
https://kataloge.uni-hamburg.de/DB=1/XMLPRS=N/PPN?PPN=320149676
Digital viá https://htdp.org/
Structure and Interpretation of Computer Programs
Harold Abelson, Gerald Jay Sussman and Julie Sussman
MIT Press, 1996
?https://kataloge.uni-hamburg.de/DB=1/XMLPRS=N/PPN?PPN=1703256336
Racket Docs (Teachpacks): https://docs.racket-lang.org/teachpack/2htdp2htdp.html
* Image (2htdp/Image): https://docs.racket-lang.org/teachpack/2htdpimage.html
* World/Universe (2htdp/universe): https://docs.racket-lang.org/teachpack/2htdpuniverse.html
Übersicht der Kurstermine
1
2
3
4
5
6
7
8
9
Lehrende
David Christopher Mosteller
Termine
Datum
Von
Bis
Raum
Lehrende
Termine
1
Datum
Fr, 11. Jun. 2021
Bis
10:00
Bis
14:00
Raum
Digital
Lehrende
David Christopher Mosteller
2
Datum
Mo, 16. Aug. 2021
Bis
10:00
Bis
17:30
Raum
Digital
Lehrende
David Christopher Mosteller
3
Datum
Di, 17. Aug. 2021
Bis
10:00
Bis
17:30
Raum
Digital
Lehrende
David Christopher Mosteller
4
Datum
Mi, 18. Aug. 2021
Bis
10:00
Bis
17:30
Raum
Digital
Lehrende
David Christopher Mosteller
5
Datum
Do, 19. Aug. 2021
Bis
10:00
Bis
17:30
Raum
Digital
Lehrende
David Christopher Mosteller
6
Datum
Mo, 23. Aug. 2021
Bis
10:00
Bis
17:30
Raum
Digital
Lehrende
David Christopher Mosteller
7
Datum
Di, 24. Aug. 2021
Bis
10:00
Bis
17:30
Raum
Digital
Lehrende
David Christopher Mosteller
8
Datum
Mi, 25. Aug. 2021
Bis
10:00
Bis
17:30
Raum
Digital
Lehrende
David Christopher Mosteller
9
Datum
Do, 26. Aug. 2021
Bis
10:00
Bis
17:30
Raum
Digital
Lehrende
David Christopher Mosteller
Prüfungen im Rahmen von Modulen
Modul(Startsemester)/ Kurs
Leistungskombination
Prüfung
Datum
Lehrende
Bestehenspflicht
InfB-Prak Praktikum Informatik (WiSe 20/21) / InfB_Prak Praktikum Funktionale Programmierung
Praktikumsabschluss
2 Praktikumsabschluss
ohne Termin
David Christopher Mosteller; Dr. Daniel Moldt
Ja
InfB-Prak Praktikum Informatik (WiSe 19/20) / InfB_Prak Praktikum Funktionale Programmierung
Praktikumsabschluss
4 Praktikumsabschluss
ohne Termin
David Christopher Mosteller; Dr. Daniel Moldt
Ja
InfB-Prak Praktikum Informatik (SoSe 20) / InfB_Prak Praktikum Funktionale Programmierung
Praktikumsabschluss
3 Praktikumsabschluss
ohne Termin
David Christopher Mosteller; Dr. Daniel Moldt
Ja
InfB-Prak Praktikum Informatik (SoSe 21) / InfB_Prak Praktikum Funktionale Programmierung
Praktikumsabschluss
1 Praktikumsabschluss
ohne Termin
David Christopher Mosteller; Dr. Daniel Moldt
Ja
InfB-Prak/MCI Praktikum Mensch-Computer-Interaktion (SoSe 21) / MCI_PR Praktikum Funktionale Programmierung
Praktikumsabschluss
1 Praktikumsabschluss
ohne Termin
David Christopher Mosteller; Dr. Daniel Moldt
Ja
InfB-Prak/SSE Softwareentwicklungspraktikum (WiSe 19/20) / SSE_PR Praktikum Funktionale Programmierung
Praktikumsabschluss
4 Praktikumsabschluss
ohne Termin
David Christopher Mosteller; Dr. Daniel Moldt
Ja
InfB-Prak/SSE Softwareentwicklungspraktikum (SoSe 21) / SSE_PR Praktikum Funktionale Programmierung
Praktikumsabschluss
1 Praktikumsabschluss
ohne Termin
David Christopher Mosteller; Dr. Daniel Moldt
Ja
InfB-Prak/SSE Softwareentwicklungspraktikum (WiSe 20/21) / SSE_PR Praktikum Funktionale Programmierung
Praktikumsabschluss
2 Praktikumsabschluss
ohne Termin
David Christopher Mosteller; Dr. Daniel Moldt
Ja
InfB-Prak/SSE Softwareentwicklungspraktikum (SoSe 20) / SSE_PR Praktikum Funktionale Programmierung
Praktikumsabschluss
3 Praktikumsabschluss
ohne Termin
David Christopher Mosteller; Dr. Daniel Moldt
Ja