Vorlesung Programmieren WS 2022/23
E-Mails richten Sie bitte ausschließlich an: programmieren-vorlesung@cs.kit.edu
Semester: | Wintersemester 2022/23 |
LP (ECTS): | 5 |
SWS: | 4 |
Studiengang: | Bachelor Informatics, Bachelor Information Engineering |
Dozent: | Prof. Dr.-Ing. Anne Koziolek |
- Ort und Zeit der Lehrveranstaltung
Mi 14:00–15:30 (ab 26.10.2022) | |
30.95 (Audimax) / 50.34, -101 / 50.34, -102 |
- ILIAS-Bereich
https://ilias.studium.kit.edu/goto.php?target=crs 1929303&client id=produktiv
- Seite im Vorlesungsverzeichnis
Inhalt und Lernziele
In der Vorlesung Programmieren 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 Generics, Exceptions. 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 methodische 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
- Anmeldung im elektronischen Abgabesystem bis zum 02.11.2022, 12:00 Uhr
- Anmeldung zum Übungsschein vom 01.10.2022 bis 07.12.2022, jeweils 12:00 Uhr
- Anmeldung zu den Abschlussaufgaben vom 13.02.2023 bis 20.02.2023, jeweils 12:00 Uhr
- Anmeldung zu Tutorien vom 25.10.22 bis 27.10.22, jeweils 18:00 Uhr
Übungsblätter
Die Übungsblätter werden über die Ilias-Plattform ausgegeben. Nur die Lösungen, die über das elektronische Abgabesystem abgegeben wurden, werden korrigiert und bewertet. Die Lösungen aller Aufgaben sind ausschließlich online über das System abzugeben!
- Übungsblatt 1: Ausgabe: 02.11.2022 (ca. 12:00 Uhr), Abgabe: 09.11.2022 (12:00 Uhr) - 17.11.2022 (06:00 Uhr)
- Übungsblatt 2: Ausgabe: 16.11.2022 (ca. 12:00 Uhr), Abgabe: 23.11.2022 (12:00 Uhr) - 01.12.2022 (06:00 Uhr)
- Übungsblatt 3: Ausgabe: 30.11.2022 (ca. 12:00 Uhr), Abgabe: 07.12.2022 (12:00 Uhr) - 15.12.2022 (06:00 Uhr)
- Übungsblatt 4: Ausgabe: 14.12.2022 (ca. 12:00 Uhr), Abgabe: 21.12.2022 (12:00 Uhr) - 12.01.2023 (06:00 Uhr)
- Übungsblatt 5: Ausgabe: 11.01.2023 (ca. 12:00 Uhr), Abgabe: 18.01.2023 (12:00 Uhr) - 26.01.2023 (06:00 Uhr)
Abschlussaufgaben
Die Abschlussaufgaben werden über die Ilias-Plattform ausgegeben und ebenso über das elektronische Abgabesystem abgegeben.
- Abschlussaufgabe 1: Ausgabe: 13.02.2023 (ca. 12:00 Uhr), Abgabe: 27.02.2023 (12:00 Uhr) - 14.03.2023 (06:00 Uhr)
- Abschlussaufgabe 2: Ausgabe: 28.02.2023 (ca. 12:00 Uhr), Abgabe: 14.03.2023 (12:00 Uhr) - 29.03.2023 (06:00 Uhr)
Präsenzübung
- Die Präsenzübung findet am 13.01.2023 von 17:30 bis 19:30 Uhr statt
- Weitere Informationen werden über die Ilias-Plattform angekündigt
FAQs
In unseren FAQs finden Sie einen Überblick über häufig gestellte Fragen und die entsprechenden Antworten zum Modul: https://sdqweb.ipd.kit.edu/wiki/Programmieren/FAQ
- Praktikum Ingenieursmäßige Software-Entwicklung WS 2022/23
- Praktikum Werkzeuge für agile Modellierung WS 2022/23
- Praxis der Software-Entwicklung WS 2022/23
- Seminar Continuous Software Engineering WS 2022/23
- Seminar Daten in software-intensiven technischen Systemen – Modellierung – Analyse – Schutz WS 2022/23
- Vorlesung Empirische Softwaretechnik WS 2022/23
- Vorlesung Modellgetriebene Software-Entwicklung WS 2022/23
- Vorlesung Programmieren WS 2022/23
- Vorlesung Programmierparadigmen WS 2022/23
- Vorlesung Software-Evolution WS 2022/23
- Vorlesung Software-Produktlinien-Entwicklung WS 2022/23
- Vorlesung Softwaretechnik II WS 2022/23
- Vorlesung Sprachverarbeitung in der Softwaretechnik WS 2022/23