|
Einführung in die Programmierung
|
Zuordnung: |
BCS, 1. Semester, PS
- Credits: 6.0
von 6.0
BIS, 1. Semester, INF
- Credits: 6.0
von 6.0
|
Modulverantwortliche(r): |
Prof. Dr. Rudolf Berrendorf |
Dozenten: | Prof. Dr. Rudolf Berrendorf (V, Ü, P) Prof. Dr. Andreas Priesnitz (V, Ü, P) André Kless (P) N. N. (P) M.Sc. Javed Razzaq (P) |
Sprache: |
Deutsch |
SWS: |
Vorlesung: 2 / Übung: 1 / Praktikum: 2
|
Arbeitsaufwand: |
Präsenzstudium: 75 Stunden / Eigenstudium: 105 Stunden
|
Voraussetzungen: |
Fachhochschulreife. Allgemeine Soft Skills wie Leistungsbereitschaft, Zielverfolgung und Arbeitseffizienz. |
Lernziele: |
Studierende besitzen nach Abschluss dieser Veranstaltung grundlegende Kenntnisse zu Entwurfsprinzipien von Algorithmen und können einfache Algorithmen selbst entwerfen. Sie kennen einfache Such-und Sortierverfahren und können die Komplexität solcher Verfahren bewerten.
Studierende beherrschen die Grundbausteine der Programmiersprache Java. Sie kennen alle primitiven Datentypen und grundlegenden Kontrollstrukturen und verstehen, diese sinnvoll einzusetzen. Anhand ausgewählter Klassen (z.B. String) kennen Studierende weiterhin das Konzept von Referenztypen sowie ein- und mehrdimensionale Felder.
Sie kennen grundlegende Konzepte der objektorientierten Programmierung wie Klassen, Objekte und Vererbung.
Grundansätze der formalen Zusicherung von Programmeigenschaften und Unterschiede zu Testverfahren sind den Studierenden bekannt.
|
Inhalt: |
In dieser einführenden Veranstaltung lernen die Studierenden Grundkonzepte von Programmiersprachen und deren sinnvolle Nutzung anhand der Programmiersprache Java. Studierende kennen den systematischen Aufbau von Programmiersprachen (Syntax und Semantik; Ausdruck, Anweisung) und die Übersetzung von Programmiersprachen.
Die grundlegenden Datentypen (primitive Datentypen, Feld, String) und Kontrollstrukturen sowie das Variablenkonzept werden vermittelt. Darauf aufbauend werden erste objektorientierte Programmiertechniken (u.a. Klassenkonzept, Datenkapselung, Vererbung, Polymorphismus) eingeführt.
Einfache Entwurfsprinzipien für Algorithmen und deren Abbildung in Programmkonstrukte werden vorgestellt. Nach einer Einführung des Komplexitätsbegriffs werden einfache Such- und Sortierverfahren untersucht.
Basierend auf dem Kalkül von Hoare werden Ansätze der formalen Zusicherung von Programmeigenschaften vorgestellt. |
Studienleistung: |
Prüfung
Die Prüfung wird in Form einer schriftlichen Klausur durchgeführt.
Für die Zulassung zur Prüfung müssen mindestens 50% der Punkte aus den Übungsaufgaben der letzten Veranstaltung zu diesem Fach erreicht werden, die der Prüfung vorausgeht.
|
Medienformen: |
Vorlesungsfolien, Skript, Übungsaufgaben mit Musterlösungen, Beispielprogramme, Musterklausuren mit Lösungen, Aufgabensammlung mit Musterlösungen, monatliche Selbsttests mit Musterlösungen |
Literatur: |
- Skript
- Robert Sedgewick, Kevin Wayne: Einführung in die Programmierung mit Java. Pearson Studium, München, 2011
- Christian Ullenboom: Java ist auch eine Insel. 10. Auflage, Galileo Computing, 2012
- Java - Grundlagen und Einführung (1.Band), RRZN Hannover
- Cornelia Heinisch, Frank Müller-Hofmann, Joachim Goll: Java als erste Programmiersprache. 6. Auflage, Vieweg Teubner Verlag, 2011
Weitere aktuelle Literatur wird zu Beginn der Veranstaltung vorgestellt. |
URL: |
http://berrendorf.inf.h-brs.de/lehre/ws1415/eidp/eidp.html |
LEA-Kurs: |
https://lea.hochschule-bonn-rhein-sieg.de/goto.php?target=crs_147506&client_id=db_040811 |
Bitte entnehmen Sie Termin- und Ortsangaben dem aktuellen Stundenplan.
|