|
Einführung in die Programmierung (Berrendorf)
|
Modulverantwortliche(r): |
Prof. Dr. Rudolf Berrendorf |
Dozenten: | Prof. Dr. Rudolf Berrendorf (V, Ü) M.Sc. André Kless (Ü) M.Sc. Javed Razzaq (Ü) |
Zuordnung: |
Bachelor Informatik, 1. Semester, BI-PSE
(9 CP)
Bachelor Wirtschaftsinformatik, 1. Semester, BWI-INF
(9 CP)
|
Modul(e): |
BI-1-PSE-1, BWI-1-INF-1
|
SWS: |
Vorlesung: 4 / Übung: 3
|
Arbeitsaufwand: |
Präsenzstudium: 105 Stunden / Eigenstudium: 165 Stunden
|
Sprache: |
Deutsch |
Vorausgesetzte Vorkenntnisse: |
Allgemeine Soft Skills wie Leistungsbereitschaft, Zielverfolgung und Arbeitseffizienz. |
Angestrebte Lernergebnisse: |
Studierende kennen und beherrschen die
grundlegenden Sprachkonzepte der Programmiersprache Java. Sie kennen und
beherrschen alle primitiven Datentypen und 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, Vererbung, abstrakte Klassen und
Schnittstellen, sowie die Fehlerbehandlung über Exceptions. Für einfache
und/oder begrenzt-umfangreiche Problemstellungen erkennen sie die
Anwendbarkeit dieser Konzepte und können diese auch in Programmcode
umsetzen.
Studierende besitzen nach Abschluss dieser Veranstaltung grundlegende
Kenntnisse zu einfachen Entwurfsprinzipien von Algorithmen und können
Algorithmen zu einfachen Problemstellungen selbst entwerfen.
Grundansätze der formalen Zusicherung von Programmeigenschaften und Unterschiede zum Testen 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 Notwendigkeit der maschinellen Übersetzung eines Programms.
Die grundlegenden Datentypen (primitive Datentypen, Feld, String) und
Kontrollstrukturen sowie das Variablenkonzept werden vermittelt. Darauf
aufbauend werden wesentliche objektorientierte Programmiertechniken
(u.a. Klassenkonzept, Datenkapselung, Vererbung, Schnittstellen,
Polymorphismus) eingeführt. Einfache Entwurfsprinzipien für Algorithmen
und deren Abbildung in Programmkonstrukte werden vorgestellt.
Inhalte:
- Algorithmenbegriff und Darstellungsmöglichkeiten von Algorithmen (z.B. Aktivitätsdiagramme)
- Systematischer Aufbau von Programmiersrpachen, Beschreibung durch
z.B. Grammatiken, (E)BNF oder Syntaxdiagramme, Prozess der maschinellen
Übersetzung
- Ein-/Ausgabe über Konsole/Bildschirm
- Primitive Datentypen und Ausdrücke
- Kontrollstrukturen
- Methoden, Rekursion, Strategien der Parameterübergabe
- Felder und einfache Algorithmen auf Feldern
- Referenzen
- Abstrakte Datentypen
- Konzepte der Objektorientierten Programmierung (Datenkapselung,
Klasse/Instanz, Vererbung und Klassenhierarchien, Schnittstelle und
abstrakte Klasse, Methodenbindung, Polymorphismus, Zugriffsrechte,
Typanpassung, Finalisieren, Exception, Paket)
- Einfache Lösungsstrategien (erschöpfende Suche, Greedy-Ansatz, Backttracking)
|
Studienleistung: |
Prüfung
Die Prüfung wird in Form einer schriftlichen Klausur durchgeführt.
Für die Zulassung zur Prüfung müssen jeweils mindestens 50% der
Punkte aus den Programmieraufgaben sowie den Präsentests der letzten
Veranstaltung zu diesem Fach erreicht werden, die der Prüfung
vorausgeht.
|
Medienformen: |
Vorlesungsfolien, ggfs. Skript,
Übungsaufgaben, Beispielprogramme, Musterklausuren mit Lösungen,
Aufgabensammlung mit Musterlösungen, monatliche Selbsttests mit
Musterlösungen, gemeinsam entwickelte Beispielprogramme, individuelle
Unterstützung bei der Bearbeitung von Aufgaben in Übungen |
Literatur: |
- Skript
- Robert Sedgewick, Kevin Wayne: Einführung in die Programmierung mit Java. Pearson Studium, München, 2012
- Christian Ullenboom: Java ist auch eine Insel. 13. Auflage, Rheinwerk Computing, 2017
- Joachim Goll, Cornelia Heinisch: Java als erste Programmiersprache. 8. Auflage, Springer Verlag, 2016
- Java - Grundlagen und Einführung (1.Band), RRZN Hannover
Weitere aktuelle Literatur wird zu Beginn der Veranstaltung vorgestellt. |
URL: |
http://berrendorf.inf.h-brs.de/lehre/ws1819/eidp/eidp.html |
LEA-Kurs: |
https://lea.hochschule-bonn-rhein-sieg.de/goto.php?target=crs_489894&client_id=db_040811 |
Bitte entnehmen Sie Termin- und Ortsangaben dem aktuellen Stundenplan.
|
|