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 (für Externe)
Dozenten/-innen Danny Rehl
Veranstaltungsart Vorlesung / Übung
Sprache Deutsch
Erster Termin 27.04.2020
Zeit und Ort Montag, 11:15-12:45, INF 328 / SR 25 Freitag, 11:15-12:45, INF 306 / HS 2
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.

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.

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

Die angegebenen Zeiten sind die im Moment für Lastenausgleich im heiCONF reservierten Zeiten und können sich noch ändern. Mehr dazu im jeweils ersten Tutorium.

Die Zugangscodes für die heiCONF Räume finden Sie unten bei den Materialien verlinkt.

Der Link zu unserem Raum im heiCHAT ist unter Ankündigungen im Moodle zu finden.

Ihre bearbeiteten Übungsblätter müssen zur Korrektur auf Tutron hochgeladen werden. Sie finden eine Anleitung dazu unten bei den Materialien verlinkt.

Tutor*in Zeit Raum Bemerkungen
Julian Montag, 13:15 - 14:45 Uhr heiCONF Erster Termin: 04.05.2020
Trang Freitag, 11:15 - 12:45 Uhr heiCONF Erster Termin: 28.04.2020
Jonas Freitag, 16:15 - 17:45 Uhr heiCONF Zusatztutorium bei Bedarf

Sollte Bedarf an einem Zusatztutorium bestehen, dann werden Sie rechtzeitig über den Termin per Moodle, heiCHAT oder E-Mail informiert werden.

Kursübersicht

Seminarplan

Der Zugriff auf die Materialien ist passwortgeschützt mit dem üblichem ICL-Material-Login. (Benutzername und Passwort wird zum Beispiel beim Ersti-Tag bekanntgegeben.)

Die Folien mit Audio gibt es im Moodle als MKV-Video.

Datum Sitzung Materialien
27.04.2020 Organisatorisches Foliensatz 01, Moodle-Einschreibeschlüssel, heiCONF-Zugangscodes, Übungsblatt 00, Tutron-Handbuch
04.05.2020 Datentypen und Variablen Foliensatz 02, Übungsblatt 01
08.05.2020 Sequentielle Datentypen Foliensatz 03
11.05.2020 Weitere Datentypen Foliensatz 04, Übungsblatt 02, Vorlage 02
15.05.2020 Methoden für Datentypen, Wichtiges zu Floats, Tipps Foliensatz 05
18.05.2020 Näheres zu Unicode und Byte-Strings Foliensatz 06, Übungsblatt 03, Vorlage 03
22.05.2020 Weitere Funktionen, Geschichte Foliensatz 07
25.05.2020 Kontrollstrukturen (if, while, for) Foliensatz 08, Übungsblatt 04, Vorlage 04
29.05.2020 Funktionen Foliensatz 09
05.06.2020 Algorithmen, Module, Namensräume Foliensatz 10 (bis inkl. Folie 24), (Bonus-)Übungsblatt 05, Vorlage 05
08.06.2020 Module, Zen Of Python, Pair Programming Foliensatz 11 (ab Folie 24)
12.06.2020 Referenzen, Kopien, Mutable Default Arguments Foliensatz 12, Übungsblatt 06, Vorlage 06
15.06.2020 Rekursion Foliensatz 13
19.06.2020 Dateien, Exceptions Foliensatz 14
22.06.2020 Coding Guidelines (v.\,a. PEP-8), String-Formatierung, Logging Foliensatz 15, Übungsblatt 07, Vorlage 07, Beispieldaten 07
26.06.2020 Logging (Rest), Reguläre Ausdrücke (Teil 1) Foliensatz 16
29.06.2020 Reguläre Ausdrücke (Teil 2), Anonyme Funktionen (Teil 1) Foliensatz 17, Übungsblatt 08, Vorlage 08
03.07.2020 Anonyme Funktionen (Teil 2): map & filter & reduce, list/dict/set comprehension Foliensatz 18
06.07.2020 Generatoren, Dekoratoren (Teil 1) Foliensatz 19
10.07.2020 Dekoratoren (Teil 2), Tests (Pytest) Foliensatz 20, Übungsblatt 09, Vorlage 09
13.07.2020 OOP I Foliensatz 21
17.07.2020 OOP II Foliensatz 22, Übungsblatt 10,
20.07.2020 OOP III, Vererbung, Mehrfachvererbung Foliensatz 23
24.07.2020 OOP III, Vererbung, Mehrfachvererbung siehe letzte Folien (23)
27.07.2020 (Jahrestag der Isolierung von Insulin (1921))
31.07.2020 (Gute Bilder vom Mars durch Mariner 6 (1969))

Prüfungstermine

Uhrzeit MI 29.07. DO 30.07. FR 31.07. SA 01.08.
11:00 - 13:00 Dernhelm Ciryandil Gorbag Valacar
14:00 - 16:00 Mallor Hundar Shagrat Morwen
16:00 - 18:00 - Narvi Tarcil Elros
18:00 - 20:00 - Gilrain - Sirondil

Literatur

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

» weitere Kursmaterialien

zum Seitenanfang