Vorlesung Programmieren WS 2021/22
E-Mails richten Sie bitte ausschließlich an: programmieren-vorlesung@cs.kit.edu
Semester: | Wintersemester 2021/22 |
LP (ECTS): | 5 |
SWS: | n/a |
Studiengang: | Bachelor Informatics, Bachelor Information Engineering |
Dozent: | Dr. Robert Heinrich |
- Ort und Zeit der Lehrveranstaltung
Erstsemesterbegrüßung 18.10.2021 14:00 - 15:30 ab 27.10.2021 Mi 14:00–15:30 | |
30.95 (Audimax) / 50.34, –101 / 50.34, –102 |
- ILIAS-Bereich
https://ilias.studium.kit.edu/goto produktiv crs 1616969.html
- 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
Übungsblätter
Die Übungsblätter werden über die Ilias-Plattform ausgegeben. Die Lösungen aller Aufgaben sind ausschließlich online abzugeben. Nur die Lösungen, die über das elektronische Abgabesystem abgegeben wurden, werden korrigiert und bewertet.
- Übungsblatt 1: Ausgabe: 27.10.2021 (ca. 13:00 Uhr), Abgabe: 03.11.2021 (12:00 Uhr) - 11.11.2021 (06:00 Uhr)
- Übungsblatt 2: Ausgabe: 10.11.2021 (ca. 13:00 Uhr), Abgabe: 17.11.2021 (12:00 Uhr) - 25.11.2021 (06:00 Uhr)
- Übungsblatt 3: Ausgabe: 24.11.2021 (ca. 13:00 Uhr), Abgabe: 01.12.2021 (12:00 Uhr) - 09.12.2021 (06:00 Uhr)
- Übungsblatt 4: Ausgabe: 08.12.2021 (ca. 13:00 Uhr), Abgabe: 15.12.2021 (12:00 Uhr) - 23.12.2021 (06:00 Uhr)
- Übungsblatt 5: Ausgabe: 22.12.2021 (ca. 13:00 Uhr), Abgabe: 12.01.2022 (12:00 Uhr) - 20.01.2022 (06:00 Uhr)
Termine und Fristen
- Anmeldung im Artemis bis zum 27.10.2021, 12:00 Uhr
- Anmeldung zum Übungsschein vom 01.11.2021 bis 20.12.2021, jeweils 12.00 Uhr
- Anmeldung zu den Abschlussaufgaben vom 09.02.2022 bis 17.02.2021, jeweils 12.00 Uhr
- Präsenzübung: 21.01.2022 voraussichtlich zwischen 18:00 - 20:00
- Schülerstudenten: Mitteilung Anschrift und Geburtsdatum an programmieren-vorlesung@cs.kit.edu
Abschlussaufgaben
Die Lösungen aller Aufgaben sind ausschließlich online abzugeben. Nur die Lösungen, die über das elektronische Abgabesystem abgegeben wurden, werden korrigiert und bewertet.
- Abschlussaufgabe 1: Ausgabe: 14.02.2022 (ca. 13:00 Uhr), Abgabe: 28.02.2022 (13:00 Uhr) - 14.03.2022 (06:00 Uhr)
- Abschlussaufgabe 2: Ausgabe: 28.02.2022 (ca. 06:00 Uhr), Abgabe: 14.03.2022 (13:00 Uhr) - 28.03.2022 (06:00 Uhr)
Links
- Ilias - Vorlesungs- und Übungsmaterialien mit Forum
- Artemis - Elektronisches Abgabesystem für Ihre Programme
- VPN-Zugang - Für den Zugriff außerhalb des KIT-Netzes
- Campus Management Portal - Anmeldung zu Prüfungsleistungen
- Informatik Studiengangservice - Zentrale Studien- und Prüfungsberatung
- Tutorienzuteilung - Übersichtsseite zur Zuteilung von Tutorien
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
Administratives
- Lesegruppe
- Praktikum Ingenieursmäßige Software-Entwicklung WS 2021/22
- Praktikum Werkzeuge für agile Modellierung WS 2021/22
- Praxis der Software-Entwicklung WS 2021/22
- Seminar Continuous Software Engineering WS 2021/22
- Seminar Daten in software-intensiven technischen Systemen – Modellierung – Analyse – Schutz WS 2021/22
- Teamprojekt Software-Entwicklung WS 2021/22
- Vorlesung Empirische Softwaretechnik WS 2021/22
- Vorlesung Modellgetriebene Software-Entwicklung WS 2021/22
- Vorlesung Programmieren WS 2021/22
- Vorlesung Programmierparadigmen WS 2021/22
- Vorlesung Software-Evolution WS 2021/22
- Vorlesung Software-Produktlinien-Entwicklung WS 2021/22
- Vorlesung Softwaretechnik II WS 2021/22
- Vorlesung Sprachverarbeitung in der Softwaretechnik WS 2021/22