
5.2 Modulbeschreibungen
Modul 1001/1002 Einführung in die Informatik 08.079.1001/1002
Qualifikationsziele/Lernergebnisse/Kompetenzen
Ziel des Moduls ist die
•Beherrschung einer objektorientierten Programmiersprache und
•die Schaffung von Grundfertigkeiten zum Algorithmen- und Software-Entwurf.
Softwaresysteme werden heute im Allgemeinen nach objektorientierten Ansätzen entwickelt. Das Modul führt in
die Grundlagen der Entwicklung objektorientierter Systeme ein und erprobt diese am praktischen Beispiel. Ausge-
hend vom Einsatz objektorientierter Modellierungsmethoden zur Beschreibung von Softwaresystemen (hier UML)
wird die Realisierung, die Dokumentation und der Test des Systems vermittelt. Die Realisierung erfolgt in einer
objektorientierten Programmiersprache (hier Java) unter Verwendung relevanter Bibliotheken für Standardtypen
(Collections) und graphischer Benutzungsschnittstellen (Swing). Der praktische Anteil der Veranstaltung wird
durch Standard-Software- Entwicklungswerkzeuge (z.Z. Eclipse, SVN, JavaDoc, JUnit) unterstützt.
Bei erfolgreichem Abschluss des Moduls
•kennen die Studierenden die unterschiedlichen Programmierparadigmen und haben vertiefte Kenntnisse in
einer objektorientierten Programmiersprache,
•kennen grundlegende Datenstrukturen, Algorithmen und grundlegende Modellierungskonzepte,
•beherrschen eine objektorientierten Programmiersprache und
•Grundfertigkeiten zum Algorithmen- und Software-Entwurf
Studierende, die bereits eine objektorientiere Programmiersprache beherrschen, können an Stelle der „Einführung
in die Programmierung“ die Vorlesung „Technische Informatik“ wählen. Dieses Modul vermittelt einen Einblick
in die Architektur und die technische Realisierung von Rechnersystemen. Die Studierenden sollen dabei eine
Verständnis für die Abläufe in Rechnersystemen entwickeln und lernen, welche Komponenten den Ablauf von
Programmen besonders beeinflussen, um Engpässe und Optimierungsmöglichkeiten bei Programmen besser zu ver-
stehen.
Inhalte
Die folgenden Themen werden u.a. behandelt:
Einführung in die Programmierung
•Variablen-Begriff, Kontrollstrukturen, Felder, Unterprogramme, Rekursion, Klassenkonzept,
•Algorithmen zum Suchen und Sortieren, etc. und
•Software-Entwicklungszyklus
Technische Informatik
•Grundfunktionen elektronischer Schaltkreise, zugehörige Schaltlogik, Aufbau
•komplexerer Schaltungen und technologische Aspekte
•Hauptspeicher-Aufbau, Technologie von Speicher-Bauelementen
•Rechner-Arithmetik, Mikroarchitektur und Instruktionssatz von Prozessoren
•wichtige Komponenten, die den Programm-Ablauf wesentlich beeinflussen: Pipelining, Cache und Speicherver-
waltung
•Grundzüge des Betriebssystems, Prozesse, Scheduling, Synchronisation
•Massenspeicher und Ein-Ausgabe-Einheiten
Einführung in die Softwareentwicklung
•Objektorientierung (Grundlagen, Vorgehen zur objektorientierten Softwareentwicklung),
•UML als Modellierungsmittel (Objekt- u. Klassendiagramme), objektorient. Implementierung,
•Testen (Testgrundlagen, Testfälle und -strategien, Testen mit JUnit), Ausnahmebehandlung,
•abstrakte Datenstrukturen (Java-Collections), GUI Entwicklung mit Swing,
•Weiterführende Elemente und Konzepte von Programmiersprachen, Programmierparadigmen,
•grundl. Datenstrukturen und Algorithmen, z.B. Suchen und Sortieren; Graphenalgorithmen
Zugangsvoraussetzungen
Empfohlene Teilnahmevoraussetzung(en) für das Modul
bzw. für einzelne Lehrveranstaltungen des Moduls
Unterrichtssprache(n) und Prüfungssprache(n) Unterrichtssprache Deutsch
Prüfungssprache Deutsch oder Englisch
Stellenwert der Modulnote in der Gesamtnote 12/180
Häufigkeit des Angebots Jedes Semester
Begründung der Anwesenheitspflicht Veranstaltungen
107