Ruprecht-Karls-Universität Heidelberg
Institut für Computerlinguistik

Bilder vom Neuenheimer Feld, Heidelberg und der Universität Heidelberg

Programmieren I

Plot Notenverteilung Klausur

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
Veranstaltungsform Online-Lehre (asynchron)
Sprache Deutsch
Erster Termin 09.11.2020
Zeit und Ort Montag, 10:30–12:00
Freitag, 10:30–12:00
Commitment-Frist tbd

Teilnehmerkreis

  • Für Studierende der Computerlinguistik (mind 25%).
  • Bachelor-Studierende anderer Fächer können den Kurs im Rahmen einer ÜK-Veranstaltung für 3 LP besuchen.

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

  • Bearbeiten der wöchentlichen Übungsaufgaben. Klausurzulassung erreichen.
  • Bestehen der Abschlussklausur. Hinweis: Die erfolgreich bestandene Klausur ist Teil der Orientierungsprüfung.
  • Corona: Es ist derzeit noch nicht ersichtlich, ob eine schriftliche oder mündliche Abschlussprüfung mit Programmierteil die Klausur darstellt oder ersetzen wird. Das hängt auch von der Teilnehmerzahl ab, die zu Beginn des Semesters nicht bekannt ist.

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.

Tutorien

Alle Informationen zu den Tutorien finden Sie im Moodle.

Kursübersicht

Datum Sitzung Materialien
09.11.2020 Organisatorisches, Warum Python? Vorlesungsfolien (PDF)
13.11.2020 Herantasten, Datentypen und Variablen Vorlesungsfolien (PDF)
16.11.2020 Sequentielle Datentypen Vorlesungsfolien (PDF)
23.11.2020 dict, set, Übersicht Datentypen, Präzedenztabelle Vorlesungsfolien (PDF)
27.11.2020 Pair-Programming, Methoden I Vorlesungsfolien (PDF)
30.11.2020 Methoden II, Funktionen I & Operatoren Vorlesungsfolien (PDF)
04.12.2020 Unicode- und Bytestrings, Funktionen II Vorlesungsfolien (PDF)
07.12.2020 Geschichte der Programmiersprachen, Kontrollstrukturen Vorlesungsfolien (PDF)
Funktionen III (eigene Funktionen) 11.12.2020 Vorlesungsfolien (PDF)
14.12.2020 Algorithmus Vorlesungsfolien (PDF)
18.12.2020 Module Vorlesungsfolien (PDF)
11.01.2021 Zen of Python, Referenzen und Kopien, mutable default arguments Vorlesungsfolien (PDF)
18.01.2021 Rekursion Vorlesungsfolien (PDF)
22.01.2021 Dateien Vorlesungsfolien (PDF)
25.01.2021 Exceptions, PEP-8 Vorlesungsfolien (PDF)
29.01.2021 String-Formatierungen Vorlesungsfolien (PDF)
01.02.2021 Reguläre Ausdrücke Vorlesungsfolien (PDF)
05.02.2021 Funktionale Programmierung (lambda) Vorlesungsfolien (PDF)
08.02.2021 list/dict/set comprehensions, Generatoren, OOP I Vorlesungsfolien (PDF)
12.02.2021 OOP II Vorlesungsfolien (PDF)
15.02.2021 OOP III (inkl. Vererbung) Vorlesungsfolien (PDF)
22.02.2021 OOP IV (inkl. Mehrfachvererbung) Vorlesungsfolien (PDF)

Weitere Kursinformationen und -materialien sind im Moodle zu finden.

Literatur

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