Programmierung (vormals Grundlagen der Softwareentwicklung und Programmierung (Informatik I))

Vorlesung "Programmierung"

Aktuelles

Wichtige Informationen zur Veranstaltung

1. Klausur: 06.02.2018, 11:30 - 13 Uhr, Hörsäle 5A, 5B, 5C, 5D, 5E, 5F, 5J, 5K, 5L, 6J (Hörsaalverteilung wird rechtzeitig bekannt gegeben)

2. Klausur: 26.03.2018, 12:30 - 14 Uhr, Hörsäle 5A, 5B, 5C, 5D, 5F, 5K, 5L, 6C (Hörsaalverteilung wirde rechtzeitig bekannt gegeben)


Dozent
   undefinedProf. Dr. Stefan Harmeling

Betreuer

   undefinedJulius Ramakers, undefinedChristian Meter und undefinedStefan Nothaas

Studiengang

Bachelor-Studiengang Informatik

Leistungspunkte

10 LP

Lehrveranstaltungen

  • Vorlesung „Programmierung“, 4 SWS, Mo. + Mi. 08:30 - 10 Uhr, Hörsaal 16.12 (Ersatz)
    Ab dem 16.10.2017 findet der Montagstermin in Hörsaal 3A, Gebäude 23.01 statt, der Mittwochstermin bleibt in Hörsaal 16.12.
  • Übung, 2 SWS
  • Praktische Übung, 2 SWS

Die Materialien zur Vorlesung (Übungsblätter, Vorlesungsfolien, Aufzeichnungen, etc.) finden Sie im ILIAS System (https://ilias.hhu.de). Im ILIAS System können Sie sich mit Ihrer Universitätskennung einloggen. Die Abgabe der Übungsaufgaben erfolgt über das AUAS Abgabesystem (https://auas.cs.uni-duesseldorf.de/abgabe), dort müssen Sie sich mit Ihrer Universitäts-Email selber registrieren. Sollten Sie Probleme mit der Anmeldung haben, können Sie sich an Julius Ramakers (Julius.Ramakers(at)uni-duesseldorf.de) wenden.

Inhalte

Dieses Modul vermittelt grundlegende Programmierkenntnisse in einer objektorientierten Programmiersprache. Darüber hinaus werden einführend Aspekte von Algorithmen und Datenstrukturen behandelt. Es wird keine Programmiererfahrung vorausgesetzt.

  • Grundlegende Begriffe der Informatik
  • Primitive Datentypen und Variablen
  • Kontrollstrukturen
  • Eigene Datentypen (Klassen) und Arrays
  • Programmstrukturen im Speicher (Heap, Stack)
  • Konzepte der Objektorientierung (Polymorphie, Schnittstellen)
  • Rekursion
  • Fehlerbehandlung
  • Dynamische Datenstrukturen (Listen, Binärbäume, Hashing)
  • Suchen und Sortieren (ausgewählte Algorithmen, u.a. binäre Suche, BubbleSort, QuickSort)
  • Datenströme (Standard-Eingabe und -Ausgabe, einfache 2D-Grafik, Dateien)

Lernergebnisse/Kompetenzen

Studierende sollen nach Absolvierung der Lehrveranstaltungen in der Lage sein,

  • Begriffe der Informatik und der Programmierung zu nennen und zu erläutern
  • einfache Algorithmen (iterativ und rekursiv) zu verstehen, deren Ablauf zu beschreiben, sowie selbst zu erstellen
  • eigene Datentypen zu konzipieren und anzuwenden
  • einfache objektorientierte Programme mit Polymorphie, Vererbung und Schnittstellen zu entwickeln
  • die behandelten dynamischen Datenstrukturen anzuwenden

Literatur

  • R. Schiedermeier, „Programmieren mit Java“, Pearson Studium, 2010.
  • C. Ullenboom, „Java ist auch eine Insel“, 11. Aufl., 2014
  • R. Sedgewick & K. Wayne, „Introduction to Programming in Java“, Addison-Wesley, 2007.

Verwendbarkeit des Moduls

  • Pflichtbereich
  • Anwendungsfach im Bachelor-Studiengang Mathematik und Anwendungsgebiete
  • Nebenfach im Bachelor-Studiengang Physik
  • Nebenfach im Bachelor-Studiengang Medizinische Physik
  • Modul D1 im Studienbereich Informatik (D) im Integrativen Bachelor-Studiengang Sprachtechnologie und Informationswissenschaft

Teilnahmevoraussetzungen

Keine

Voraussetzungen für die Vergabe von Leistungspunkten

  • aktive und erfolgreiche Mitwirkung in den theoretischen und praktischen Übungen
  • schriftliche Prüfung (Klausur, i.d.R. 90 Minuten)

Häufigkeit des Angebots, modulare Schiene

Jedes Wintersemester

Modulbeauftragte und hauptamtliche Lehrende

Prof. Dr. Stefan Harmeling, Prof. Dr. Michael Schöttner

Verantwortlich für den Inhalt: E-Mail sendenWE Informatik