Informatik I - Übersicht
Dozenten: Prof. Dr. Jan-Georg Smaus
Übungen: Dr. Gabriele Röger und Dr. Robert Mattmüller
Termine
Vorlesung: Dienstags, 10:15-12:00 Uhr, und donnerstags, 10:15-12:00 UhrÜbungen und Betreutes Programmieren: Je nach Gruppe
Klausur: Montag, 28. Februar 2011, 14:00-17:00 Uhr
Nachklausur: Donnerstag, 1. September 2011, 10:00-13:00 Uhr
Klausureinsicht (Nachklausur): Freitag, 30. September 2011, 14:00-18:00 Uhr und Montag, 24. Oktober 2011, 14:00-18:00 Uhr
Sprechstunden:
- Prof. Dr. Jan-Georg Smaus Dienstag 12-13 Uhr,
- Dr. Gabriele Röger Mittwoch 11:30-12:30 Uhr,
- Dr. Robert Mattmüller Donnerstag 15-16 Uhr
Ort
Vorlesung: Hörsaal 101-00-036Übungen und Betreutes Programmieren: Je nach Gruppe
Klausur: Hörsäle 101-00-026, 101-00-036
Nachklausur: Hörsaal 101-00-026
Klausureinsicht (Nachklausur): Geb. 052 Raum 00-045
Sprechstunden:
- Prof. Dr. Jan-Georg Smaus Geb. 052 Raum 00-042,
- Dr. Gabriele Röger Geb. 052 Raum 00-041,
- Dr. Robert Mattmüller Geb. 052 Raum 00-045.
Sprache
Die Vorlesung wird auf Deutsch gehalten.
Lernziel und Vorlesungsinhalt
Die Studierenden sollen die Grundlagen des systematischen Programmierens und Testens beherrschen. Sie sollen datengesteuerte Algorithmen entwerfen, sie in einer Programmiersprache formulieren und auf Rechnern testen und ausführen lassen können. Sie sollen die Grundkonzepte moderner höherer Programmiersprachen beherrschen und zur Programmentwicklung auf Rechnern einsetzen können.
Die Vorlesung gibt eine Einführung in die Grundlagen der Informatik. Anhand einer imperativen und einer funktionalen Programmiersprache werden Grundkonzepte der Programmierung erläutert. Dazu gehören funktionale und prozedurale Programmierung, test- und vertragsgesteuerte Entwicklung, Datenabstraktion, datengesteuerte und objektorientierte Programmierung.
Probeklausur
Um den Vorlesungsteilnehmern einen ersten Eindruck davon zu vermitteln, wie die Abschlussklausur aussehen könnte, wurde am Dienstag, den 21. Dezember 2010, eine Probeklausur geschrieben (Lösung dazu).
Übungen und Prüfung
Begleitend zur Vorlesung werden wöchentlich betreute Programmierübungen und 14-täglich theoretische Übungen angeboten. Die Teilnahme am Übungsbetrieb ist Voraussetzung für die Zulassung zur Abschlussprüfung, die aus einer vierstündigen Klausur besteht. Detaillierte Informationen zu den Übungsmodalitäten, zur Klausurzulassung und zur Prüfung finden sich in den Prüfungsbedingungen.
Literatur
Die Bücher können Sie in der Bibliothek einsehen. Der Erwerb der Bücher ist nicht obligatorisch.
Programmierung im Allgemeinen
- Herbert Klaeren und Michael Sperber. Die Macht der Abstraktion. Einführung in die Programmierung. Teubner Verlag, 2007.
Programmiersprachenspezifische Literatur
Python
- Mark Lutz. Learning Python. O'Reilly Media, 2009.
(Besonders für Einsteiger geeignet, allerdings manchmal etwas langatmig.) - Alex Martelli. Python in a Nutshell. O'Reilly Media, 2006.
(Eher für Fortgeschrittene.) - Alex Martelli, Anna Martelli Ravenscroft und David Ascher. Python Cookbook. O'Reilly Media, 2005.
(Codebeispiele. Sehr nützlich.) - Mark Pilgrim. Dive Into Python 3.
(Für erfahrenere Programmierer.) - Allen Downey, Jeffrey Elkner und Chris Meyers.
How to Think Like a Computer Scientist: Learning With Python.
(Für Programmieranfänger.) - Peter Kaiser und Johannes Ernesti.
Python.
(Für Programmieranfänger.)
Weitere Online-Ressourcen zu Python
Mathematik
-
Gerald Teschl und Susanne Teschl.
Mathematik für Informatiker, Band 1: Diskrete Mathematik und Lineare Algebra.
Springer-Verlag, 3. Auflage, 2008.
[Elektronischer Volltext (Universitätslizenz)]
(Kapitel 5 behandelt Relationen, vgl. Foliensatz 8, Mathematische Exkursion: Binäre Relationen.)
Evaluation
Die Ergebnisse der Evaluation durch die Studierenden können Sie hier nachlesen. In den Ergebnissen sind alle Bewertungen zu Assistenten und studentischen Tutoren, und nur diese, entfernt worden.