Ruprecht-Karls-Universität Heidelberg
Bilder vom Neuenheimer Feld, Heidelberg und der Universität Heidelberg

Programmieren I

Ankündigungen

Kursbeschreibung

Studiengang Modulkürzel Leistungs-
bewertung
BA-2010 P I 6 LP
ÜK - 3 LP (nicht für CL)
Dozent Danny Rehl
Veranstaltungsart Vorlesung / Übung
Sprache Deutsch
Erster Termin 13.04.2026 10:15 Uhr
Zeit und Ort Montag, 10:15 - 11:45; INF 306 / SR 14
Montag, 13:15 - 14:45; INF 306 / SR 20
Tutorien Ole Lorbacher
Mittwoch, 15:15 - 16:45; INF329/SR26
Commitment-Frist Wird per E-Mail institutsweit bekanntgegeben, vermutlich eine Woche vor Prüfungstermin.

Teilnehmerkreis

  • Für Studierende der Computerlinguistik (ab 25 %) für 6 ECTS
  • Bachelor-Studierende anderer Fächer als ÜK-Veranstaltung für 3 ECTS
  • Andere Studierende sind nur für die hörende Teilnahme zugelassen

FAQ

Bitte schauen Sie auf die FAQ-Seite, bevor Sie uns kontaktieren. Für wichtige Fragen, die dort nicht beantwortet werden, schreiben Sie gerne eine E-Mail an prog1@cl.uni-hei... Wir nehmen die Frage dann auf oder beantworten Ihre E-Mail. Mit einer E-Mail an "prog1@cl.uni-hei..." erreichen Sie den Dozenten und die Tutor*innen.

Teilnahmevoraussetzungen

  • Grundkenntnisse in Unix (entsprechend der Pool-Einführung)
  • Es sind keine Programmierkenntnisse im Voraus nötig

Leistungsnachweis

3 ECTS

  • Bearbeiten der wöchentlichen Übungsaufgaben
  • Bestehen der Übungsaufgaben mit mind. Note 4,0

6 ECTS

  • Bearbeiten der wöchentlichen Übungsaufgaben
  • Prüfungszulassung erreichen (80 % der Übungsaufgaben)
  • Bestehen der Abschlussprüfung (Klausur)

Hinweis für Computerlinguist*innen (gilt nicht für ÜK/3 ECTS): Die erfolgreich bestandene Prüfung ist Teil der Orientierungsprüfung.

Inhalt

Ziel dieser Vorlesung ist, Studierenden einen ersten Überblick über die systematische Entwicklung von wartbaren und korrekten Programmen zu geben. Dies geschieht anhand der objektorientierten, interpretierten Sprache Python, die mit einem einfachen Objektmodell, guter Unterstützung der Modularisierung und einer reichhaltigen Bibliothek einen raschen Zugang zu modernen Programmiertechniken und zudem weitgehende Plattformunabhängigkeit bietet. Dabei wird versucht, den Stoff u.a. anhand konkreter (computerlinguistischer) Fragestellungen unter der Einhaltung von Standards und Konventionen zu entwickeln.

Kursplan

Datum Sitzung Materialien
13.04.2026 Organisatorisches, Überblick Themen, Warum Python, Erstes Herantasten;
Datentypen (int, float, bool) & Operatoren;
Folien 01
Folien 02
20.04.2026 Folien 02 ab bool;
Sequenzen: Strings (inkl. Unicode & Bytes)
(Fortsetzung)
Folien 03
27.04.2026 weitere Sequenzen, Dictionaries, Mengen, Zusammenfassung;
Tutron, Pair-Programming, Methoden, weitere built-ins
Folien 04
Folien 05
04.05.2026 weitere Funktionen, String-Formatierung, Kontrollstrukturen; Folien 06
11.05.2026 Kontrollstrukturen (Fortsetzung), Funktionen;
Algorithmen, Module
Folien 07
Folien 08
18.05.2026 Zen of Python, Referenzen, Shallow/Deep Copies;
Rekursion
Folien 09
Folien 10
25.05.2026 Pfingstmontag (Public Holiday) --
01.06.2026 Dateien (I/O-Operationen), Exceptions;
PEP-008, Unpacking
Folien 11
Folien 12
08.06.2026 Erweiterte String-Formatierung, Logging;
Reguläre Ausdrücke
Folien 13
Folien 14
15.06.2026 Anonyme Funktionen (lambda), comprehensions (list, dict, set);
Generatoren und Iteratoren
Folien 15
Folien 16
22.06.2026 Dekoratoren;
Unit-Testing mit Pytest
Folien 17
Folien 18
29.06.2026 Kursevaluation (10 min.), Objektorientierung (OOP) I
Objektorientierung (OOP) II
Folien 19
Folien 20
06.07.2026 Objektorientierung (OOP) III: (Mehrfach-)Vererbung, Mixins
Mob-Programming (Übungen zu OOP)
Folien 21
-
13.07.2026 Q&A-Session/Wiederholung
Klausurtermin 13:00 - 15:00
-
INF 306, SR 20
20.07.2026 voraussichtlich: Workshop - Programmieren mit Agentic AI

Literatur

  • Offizielle Python-Dokumentation unter https://docs.python.org
  • Weitere Literatur wird in der Vorlesung bekannt gegeben.
zum Seitenanfang