CS1018 Konzepte systemnaher Programmierung

Modulverantwortliche
  • Prof. Dr. Andre Rein
Lehrende
  • Prof. Dr. Andre Rein
  • Florian von Zabiensky
Notwendige Voraussetzungen zur Teilnahme

Für Bachelor Informatik, Bachelor Ingenieur-Informatik: CS1013 Objektorientierte Programmierung CS1017 Algorithmen und Datenstrukturen,

Für Bachelor Social Media Systems: IT1002 Webbasierte Systeme 2, CS1017 Algorithmen und Datenstrukturen

Kurzbeschreibung

Unter Benutzung der Programmiersprache C wird eine virtuelle Maschine für eine kleine Programmiersprache implementiert, als Beispiel, wie Abstraktionen aus Systemdiensten synthetisiert werden können.

Inhalte
  • C-Programmierung
  • Speicherverwaltung, Laufzeitorganisation
  • Bibliotheken
  • Compiler, Assembler, Binder, Lader
  • Garbage-Collectoren
  • Interpreter, virtuelle Maschinen
Qualifikations- und Lernziele

Fachkompetenzen

  • Die Studierenden können die notwendigen Entwicklungstools für systemnahe Informatiklösungen benennen und diese sicher bedienen, um Programme zu erzeugen.
  • Sie können erklären, wie einfache Programmiersprachen aufgebaut sind, wie Programme auf einem Computer ausgeführt werden, wie systemnahe Programmiersprachen funktionieren und angewendet werden und wie diese eingesetzt werden können, um Problemstellungen der Informatik auf einer niedrigen Abstraktionsschicht adäquat zu lösen.

Methodenkompetenzen (fachlich & überfachlich)

  • Die Studierenden können den damit verbundenen Aufwand einschätzen, sind zur Lösung von Problemsituationen befähigt und können das erworbene Wissen auf andere Probleme übertragen und dort anwenden, um Lösungen zu erhalten.
  • Sie können systemnahe Informatiklösungen entwickeln.

Sozialkompetenzen

  • Die Studierenden sind in der Lage, Software in einem Team zu entwickeln, sich zu organisieren, um gesetzte Termine einzuhalten und überwiegend eigenverantwortlich zu handeln.

Selbstkompetenzen

  • Die Studierenden können sich einem komplexen Thema strukturiert und in Selbstorganisation nähern, sich selbstständig korrigieren und für einen längeren Zeitraum konzentriert und zielstrebig an einer Aufgabe arbeiten.
ECTS-Leistungspunkte (CrP)
  • 6 CrP
  • Arbeitsaufwand 180 Std.
  • Präsenzzeit 60 Std.
  • Selbststudium 120 Std.
Lehr- und Lernformen
  • 4 SWS
  • Vorlesung 2 SWS
  • Praktikum 2 SWS
Studiensemester
  • Informatik (B.Sc. 2010) - 3. Semester
  • Ingenieur-Informatik (B.Sc. 2010) - 3. Semester
  • Social Media Systems (B.Sc. 2016)
Dauer
1 Semester
Häufigkeit des Angebots
Jedes Semester
Unterrichtssprache
Deutsch
Bonuspunkte

Ja

Bonuspunkte werden gemäß § 9 (4) der Allgemeinen Bestimmungen vergeben. Art und Weise der Zusatzleistungen wird den Studierenden zu Veranstaltungsbeginn rechtzeitig und in geeigneter Art und Weise mitgeteilt.

Prüfungsleistungen

Prüfungsvorleistung: Hausübungen (Anzahl der Hausübungen wird den Studierenden rechtzeitig und in geeigneter Weise bekannt gegeben.)

Prüfungsleistung: Klausur

Benotung
Die Bewertung des Moduls erfolgt gemäß §§ 9, ggf. 12 (Teilleistungen), ggf. 18 (Arbeiten, Kolloquien) der Allgemeinen Bestimmungen (Teil I der Prüfungsordnung).
Verwendbarkeit
Gemäß § 5 der Allgemeinen Bestimmungen (Teil I der Prüfungsordnung) Verwendbarkeit in allen Bachelorstudiengänge der THM möglich.
Literatur, Medien
  • Kernighan, B.; Ritchie, D.: The C Programming Language. Prentice Hall.
  • Jones, R.; Lins, R.: Garbage Collection. Algorithms for Automatic Dynamic Memory Management. John Wiley & Sons.
  • Smith, J.; Nair, R.: Virtual Machines. Versatile Platforms for Systems and Processes. Morgan Kaufmann.

Rechtliche Hinweise