Hochschule Reutlingen
Fakultät Informatik
Studiengang Medien- und Kommunikationsinformatik Bachelor

Informatik 1

mki-B1 - I1

Formaler Teil

Lehrveranstaltungen und Form Informatik 1 Vorlesung, Informatik 1 Praktikum
Dozenten Prof. Dr. Karlheinz Hug (WS),

Prof. Dipl.-Ing. Helmut Maier (SS)

Sprache Deutsch
Curriculum mki-B1, 1. Semester.
Status Pflichtfach
Angebot jedes Semester
Dauer und Arbeitsaufwand 4+2 SWS, Präsenzzeit: 90 Stunden, Eigenstudium: 210 Stunden
Kreditpunkte 10 ECTS (5+5)
Voraussetzung für mki-B4, 4. Semester
Prüfungen Vorlesung: Artefakt und schriftliche Klausur von 2 Stunden Dauer am Ende des 1. Semesters; benotet.

Praktikum: Erläuterung und Vorführung von Lösungen zu Übungsaufgaben, wobei eine bestimmte Punktzahl zu erreichen ist; unbenotet.

Inhaltlicher Teil

Kurzbeschreibung

Eine Einführung in die praktische Informatik; sie führt über strukturiertes und modulares Programmieren an objektorientiertes Programmieren heran und betont Methoden der Softwareentwicklung wie vertragliches Spezifizieren von Schnittstellen, Gestalten einfacher Dialoge, strukturiertes Implementieren von Dialog- und Funktionsmodulen, schrittweises Verfeinern und Benutzen von Modulen und Klassen.

Empfohlene Vorkenntnisse

Nur ein gewisses mathematisches und logisches Grundverständnis. Benötigte mathematische Grundkenntnisse vermittelt das begleitende Modul Theoretische Grundlagen 1. Im Praktikum sind erwünscht: Grundkenntnisse im Benutzen eines PCs, der Benutzungsoberfläche von MS-Windows und eines Texteditors; erworbene Kenntnisse aus der Vorlesung; Vorbereitung anhand der Übungsblätter.

Bezug zu Gesamtqualifikationszielen

Informatik 1 trägt zu den Gesamtlehrzielen von mki wie folgt bei:
  • Solide Informatik-Grundlagen: Die Studierenden lernen theoretisch fundierte, praxisrelevante Prinzipien, Konzepte und Methoden der Programmkonstruktion kennen.
  • Umfassende Methodenkompetenz: Die Studierenden lernen systematisches, methodisches Vorgehen beim Analysieren und Entwickeln von Programmen.
  • Attraktive Berufsperspektive: Die Studierenden lernen aktuelle Techniken der Softwareentwicklung kennen.
  • Soziale und kommunikative Kompetenz: Das Praktikum regt die Studierenden an, über Programmieraufgaben und Lösungsentwürfe zu diskutieren und in kleinen Gruppen Lösungen zu erarbeiten.

Lernziele

Der Hauptzweck von Informatik 1, 2 und 3 ist, Grundlagen der praktischen Informatik und zentrale Ideen imperativer Programmierung zu vermitteln, um die Studierenden auf professionelles, industrielles Entwickeln von qualitätvoller Software für multimediale und verteilte Anwendungen vorzubereiten. Im Praktikum wenden die Studierenden die in der Vorlesung rezipierten Kenntnisse selbstständig beim Lösen einfacher Übungsaufgaben an. Die Studierenden sind am Ende fähig,
  • modulare Entwürfe zu einfachen Anwendungsproblemen zu verstehen,
  • Modulschnittstellen vertraglich zu spezifizieren,
  • einfache Dialoge zu gestalten,
  • die Aspekte Ein-/Ausgabe und Funktion in Dialog- und Funktionsmodule zu trennen,
  • die Korrektheit einfacher Algorithmen zu beweisen,
  • den Ablauf von Algorithmen zu verfolgen,
  • algorithmische Lösungen strukturiert und modular zu programmieren,
  • Schleifen systematisch zu konstruieren,
  • Programmentwürfe schrittweise zu verfeinern,
  • Module und Klassen zu benutzen.
Zudem haben sie kennen gelernt:
  • Standardalgorithmen zu Standardproblemen wie Suchen in und Sortieren von Reihungen,
  • Grundideen des objekt- und komponentenorientierten Programmierens.

Inhalte

Dieser erste Teil einer dreiteiligen Einführung in die Informatik konzentriert sich auf das Programmieren im Kleinen und führt über strukturiertes und modulares Programmieren an objekt- und komponentenorientiertes Programmieren heran. Unter den behandelten Aspekten sind Komponenten von Rechnersystemen, Syntax, Semantik und Pragmatik von Programmiersprachen, Daten und Algorithmen, Typisierung, statische Datenstrukturen, Prozeduren und prozedurale Abstraktion, Modularisierung und Datenabstraktion, Kunde-Lieferant-Beziehung, Standardalgorithmen.

Im Mittelpunkt stehen Methoden der Programmentwicklung wie modulares Zerlegen, Spezifizieren durch Vertrag, funktionales Gestalten einfacher Dialoge, strukturiertes Programmieren, Top-Down- und Bottom-Up-Entwurf, schrittweises Verfeinern, Benutzen und Öffnen von Black Boxes, Benutzen von Modulbibliotheken.

Mit Notationen wie Moduldiagramme, Zustandsdiagramme, Struktogramme, Syntaxdiagramme und EBNF und erster Lehrsprachen werden die Konzepte und Methoden konkretisiert. Als Spezifikationssprache dient Cleo (Contract Specification Language based on Eiffel and Oberon), als Implementationssprache die schlanke, objekt- und komponentenorientierte Programmiersprache Component Pascal, die die Entwicklungslinie Pascal - Modula - Oberon fortsetzt.

Im Praktikum lernen die Studierenden anhand kleiner Übungsaufgaben u.a. aus den Bereichen Unterhaltungs- und elementare Mathematik, Grafik und Informatik, gegebene Programme zu verstehen, zu erweitern, zu ändern und neue Programme zu schreiben.

Lehrformen und -methoden, Medien

Vorlesung mit begleitendem Praktikum. Seminaristischer Unterricht mit Tafelanschrieb, Tageslichtprojektion und PC-Beamer zwecks Demonstration von Beispielprogrammen und interaktiver Programmentwicklung.

Im Praktikum bearbeiten die Studierenden individuell oder in Zweiergruppen Übungsaufgaben auf Papier und am PC und entwickeln ihre eigenen Beispielprogramme, wobei sie die Lehrsprachen benutzen. Intensive Betreuung durch den Dozenten, Assistenten und Tutoren.

Lehrmaterial

Zwei Bücher, Skripten, Folien, Beispielprogramme und Übungsblätter, in gedruckter und/oder elektronischer Form verteilt.

Herunterladbares Material

Literatur

K. Hug: Module, Klassen, Verträge. Ein Lehrbuch zur komponentenorientierten Softwarekonstruktion Vieweg, Braunschweig, Wiesbaden (2001) 2. Aufl.

J. S. Warford: Computing Fundamentals. The Theory and Practice of Software Design with BlackBox Component Builder Vieweg, Braunschweig, Wiesbaden (2002)

C. Vogt: Informatik - Eine Einführung in Theorie und Praxis Spektrum Akademischer Verlag, Heidelberg, Berlin (2003)

Vertiefende Literatur