Vorlesung Programmieren 1 WS 2026/27
E-Mails richten Sie bitte ausschließlich an: programmieren-vorlesung@cs.kit.edu
| Semester: | Wintersemester 2026/27 |
| LP (ECTS): | 5 |
| SWS: | 4 |
| Studiengang: | Bachelor Informatics |
| Dozent: | Prof. Dr.-Ing. Anne Koziolek |
- Ort und Zeit der Lehrveranstaltung
| Mi 14:00–15:30 (ab 28.10.2026) | |
| 30.95 (Audimax) |
- ILIAS-Bereich
- Seite im Vorlesungsverzeichnis
Inhalt und Lernziele
In der Vorlesung Programmieren 1 erarbeiten Sie sich die folgenden Qualifikationsziele:
Studierende
- beherrschen grundlegende Strukturen und Details der Programmiersprache Java, insbesondere Kontrollstrukturen, einfache Datenstrukturen, Umgang mit Objekten;
- beherrschen die Implementierung nichttrivialer Algorithmen sowie grundlegende Programmiermethodik und elementare Softwaretechnik;
- haben die Fähigkeit zur eigenständigen Erstellung mittelgroßer, lauffähiger Java-Programme, die einer automatisierten Qualitätssicherung (automatisches Testen anhand einer Sammlung geheimer Testfälle, Einhaltung der Java Code Conventions, Plagiatsprüfung) standhalten.
Studierende beherrschen den Umgang mit Typen und Variablen, Konstruktoren und Methoden, Objekten und Klassen, Interfaces, Kontrollstrukturen, Arrays, Rekursion, Datenkapselung, Sichtbarkeit und Gültigkeitsbereichen, Konvertierungen, Containern und abstrakten Datentypen, Vererbung und generische Datentypen, Ausnahmebehandlung. Sie verstehen den Zweck dieser Konstrukte und können beurteilen, wann sie eingesetzt werden sollen. Sie kennen erste Hintergründe, wieso diese Konstrukte so in der Java-Syntax realisiert sind.
Studierende können Programme von ca. 500–1000 Zeilen nach komplexen, präzisen Spezifikationen entwickeln; dabei können sie nichttriviale Algorithmen und Programmiermuster anwenden und (nicht-grafische) Benutzerinteraktionen realisieren. Studierende können Java-Programme analysieren und beurteilen, auch nach methodischen Kriterien.
Inhalte der Vorlesung sind:
- Objekte und Klassen
- Typen, Werte und Variablen
- Konstruktoren und Methoden
- Kontrollstrukturen
- Rekursion
- Referenzen, Listen
- Vererbung
- Interfaces und Generics
- Ein-/Ausgabe
- Exceptions
- Programmiermethodik
- Implementierung elementarer Algorithmen (z. B. Sortierverfahren) in Java
Termine und Fristen
- Die erste Vorlesung mit Erstsemesterbegrüßung findet am Montag, den 26.10.2026 von 14:00 bis 15:30 Uhr im 30.95 Forum Hörsaal (Audimax) statt
- Die Vorlesungen finden während der Vorlesungszeit in der Regel jeden Mittwoch von 14:00 bis 15:30 Uhr im 30.95 Forum Hörsaal (Audimax) statt
Anmeldungen
Um einen reibungslosen technischen Ablauf der Übung und der Prüfung zu ermöglichen, melden Sie sich bitte auf den Plattformen an, die im Rahmen der Übung und der Prüfung verwendet werden.
| Anmeldung zu | Anmeldung von | Anmeldung bis | Abmeldung bis |
|---|---|---|---|
| Artemis-Kurs | Do., 01. Okt. 2026, 00:00 Uhr | Mi., 11. Nov. 2026, 12:00 Uhr | |
| Übungsschein | Do., 01. Okt. 2026, 00:00 Uhr | Mi., 09. Dez. 2026, 12:00 Uhr | Mi., 13. Jan. 2027, 12:00 Uhr |
| Prüfung | Mi., 24. Feb. 2027, 00:00 Uhr | Mi., 10. März 2027, 12:00 Uhr | Mi., 10. März 2027, 12:00 Uhr |
Übungsblätter
Es gibt sechs Übungsblätter. Für Ihre Lösungen erhalten Sie Punkte, die Sie benötigen, um die Teilleistung Programmieren 1 Übungsschein (SPO 2026) bzw. Programmieren Übungsschein (SPO 2015/SPO 2022) zu bestehen.
Die Aufgabenstellungen werden über die Plattform ILIAS veröffentlicht. Ihre Lösung können Sie über die Plattform Artemis einreichen; dort wird sie durch automatische Tests überprüft und vorläufig bewertet, Sie können die Testergebnisse einsehen und Ihren Code anpassen. Nach Ende der Abgabefrist wird die Bewertung der letzten Abgabe manuell überprüft.
| Blatt Nr. | Ausgabe | Abgabe von | Abgabe bis |
|---|---|---|---|
| 1 | Mi., 04. Nov. 2026, 12:00 Uhr | Mi., 11. Nov. 2026, 12:00 Uhr | Do., 19. Nov. 2026, 06:00 Uhr |
| 2 | Mi., 18. Nov. 2026, 12:00 Uhr | Mi., 25. Nov. 2026, 12:00 Uhr | Do, 03. Dez. 2026, 06:00 Uhr |
| 3 | Mi., 02. Dez. 2026, 12:00 Uhr | Mi., 09. Dez. 2026, 12:00 Uhr | Do, 17. Dez. 2026, 06:00 Uhr |
| 4 | Mi., 16. Dez. 2026, 12:00 Uhr | Mi., 23. Dez. 2026, 12:00 Uhr | Do, 14. Jan. 2027, 06:00 Uhr |
| 5 | Mi., 13. Jan. 2027, 12:00 Uhr | Mi., 20. Jan. 2027, 12:00 Uhr | Do, 28. Jan. 2027, 06:00 Uhr |
| 6 | Mi., 27. Jan. 2027, 12:00 Uhr | Mi., 03. Feb. 2027, 12:00 Uhr | Do, 11. Feb. 2027, 06:00 Uhr |
Verspätete Abgaben können nicht akzeptiert werden; wir empfehlen deshalb ausdrücklich, rechtzeitig mit der Bearbeitung und der Abgabe zu beginnen. Voraussetzung zur erfolgreichen Teilnahme ist die fristgerechte Anmeldung im Campus-System zu der jeweils gültigen Fassung des Übungsscheins. Der Modus des Bestehens wird zu gegebener Zeit an dieser Stelle bekanntgegeben.
Abschlussaufgabe
Die Abschlussaufgabe ist eine Programmieraufgabe ähnlich zu den Übungen, zu deren Bearbeitung Sie rund vier Wochen Zeit haben. Sie bildet den ersten Teil der Teilleistung Programmieren 1 . Voraussetzung zur Teilnahme ist die fristgerechte Anmeldung im Campus-System.
| Ausgabe | Abgabe von | Abgabe bis |
|---|---|---|
| Mi., 24. Feb. 2027, ca. 12:00 Uhr | Mi., 10. März 2027, ca. 12:00 Uhr | Do., 25. März 2027, 06:00 Uhr |
Klausur
Die Klausur ist eine schriftliche Prüfung in Präsenz. Sie bildet den zweiten Teil der Teilleistung Programmieren 1 (SPO 2026) bzw. Programmieren (SPO 2015/SPO 2022). Voraussetzung zur Teilnahme ist die fristgerechte Anmeldung im Campus-System. Die Klausur findet am 30. März 2027 statt; Uhrzeit und Hörsaalaufteilung werden zu gegebener Zeit bekanntgegeben. Ebenfalls wird zu gegebener Zeit eine Probeklausur veröffentlicht.
FAQs
In den FAQs finden Sie einen Überblick über häufig gestellte Fragen und die entsprechenden Antworten zum Modul.
Im Wiki zu Programmieren 1 finden Sie Erläuterungen zu inhaltlichen Themen der Vorlesung. Diese werden aktuell überarbeitet; Änderungen an den bewertungsrelevanten Kriterien sind vorbehalten!