Lehrveranstaltungen

Im Folgenden sind kurze Beschreibungen meiner ehemaligen Lehr­veranstaltungen angegeben, die ich bis zum Wintersemester 2016 gehalten habe. Darüber hinaus sind viele Inhalte auf meinen Webseiten zu finden, so insbesondere zu den Themen

 

Kryptografie

4-std., Vorlesung mit Übungen, 5. Semester
Bachelor-Studiengang Angewandte Informatik

Für eine sichere elektronische Kommunikation hat die moderne Kryptografie große Bedeutung erlangt. Dabei geht es nicht nur um die Privatheit der Kommunikation, sondern auch um die Echtheit von elektronisch über­mittelten Dokumenten, um die Verbindlich­keit von Bestellungen und ähnliche Fragen der Sicherheit.

In begleitenden Programmier­übungen werden zunächst die Berechnungs­verfahren programmiert. Anschließend wird das RSA-Verfahren implementiert, danach einige andere Verfahren bis hin zur Diffie-Hellman-Schlüssel­vereinbarung auf Basis elliptischer Kurven. Programmier­sprache ist Python.

[ausführliche Beschreibung der Vorlesung]

 

Objektorientierte Programmierung

4-std., Vorlesung mit Labor, 2. Semester
Bachelor-Studiengang Medien­informatik

Anhand der Programmier­sprache Java werden die grund­legenden Techniken der Objekt­orientierung in der Pro­grammierung erklärt.

Inhalt der Vorlesung im Sommer­semester 2017

 

In begleitenden Programmier­übungen wird ein Computer­spieler für ein einfaches Spiel wie "Vier gewinnt" implementiert. Ziel ist es, am Ende selber nicht mehr gegen den Computer­spieler gewinnen zu können.

 

Informatik-Seminar

2-std., Seminar, 6. Semester
Bachelor-Studiengang Angewandte Informatik

Im Informatik-Seminar werden neue Entwicklungen der Informatik aufgegriffen und vorgestellt.

Beschreibung:
Informatik-Seminar im Sommer­semester 2016

 

Programmieren mit Anwendungen aus der Bioinformatik

4-std., Vorlesung mit Labor, 1. Semester
Bachelor-Studiengang Bio­technologie-Verfahrens­technik

Anhand der Programmier­sprache Java werden die grund­legenden Techniken der Pro­grammierung erklärt.

In begleitenden Programmier­übungen werden zunächst einfache, später auch anspruchs­vollere Aufgaben aus der Bio­informatik behandelt:

 

Wahl­veranstaltungen

Die Wahl­veranstaltungen werden nicht alle in jedem Semester angeboten.

Prinzipien von Programmiersprachen

4-std., Vorlesung und Labor, 6. Semester (zusammen mit Dr. P. Sadeghi)
Bachelor-Studiengang Angewandte Informatik

Diese Wahl­veranstaltung richtet sich im Besonderen an Studierende, die im Anschluss an den Bachelor-Abschluss noch ein Master-Studium anstreben.

Die Vorlesung bietet ein einiges an Theorie, aber immer in einer Form, die den Nutzen für die Praxis offenkundig werden lässt. In begleitenden Übungen werden die erlernten Konzepte praktisch angewendet und geübt und soweit möglich im Computer­labor umgesetzt. Thematisch geht es unter anderem um unterschiedliche Aspekte der Korrektheit von Programmen.

Programm­verifikation (Lang)

Testing can only show the presence of errors, not their absence (Dijkstra). Dagegen ist es mit den Methoden der Programm­verifikation möglich, formal zu beweisen, dass ein Programm fehlerfrei ist (d.h. die Spezifikation erfüllt).

Funktionale Pro­grammierung (Sadeghi)

In der funktionalen Pro­grammierung wird spezifiziert, was berechnet werden soll, nicht wie es berechnet werden soll. Spezifikation und Programm sind im Wesentlichen identisch, daher ist Korrektheit automatisch gegeben.

In den begleitenden Übungen zu Teil 1 wird das Beweisen von Programm­stücken geübt. Zu Teil 2 wird im Computer­labor das Erstellen von Programmen in der Programmier­sprache Haskell geübt.

 

Codierungsverfahren

4-std., Vorlesung mit Übungen, 6. Semester
Bachelor-Studiengang Angewandte Informatik

Redundanz bedeutet, dass Information mit mehr Zeichen als unbedingt notwendig dargestellt ist. So kann man z.B. manche Wörter abkürzen, ohne dass der Sinn verloren geht; daran zeigt sich, dass in diesen Wörtern Redundanz enthalten ist. Redundanz ist einerseits schlecht, da unnötig viel Speicher­platz oder Über­tragungszeit verbraucht wird, andererseits gut, da Fehler leichter zu erkennen und ggf. zu korrigieren sind. Der Schreib­fehler in dem Wort "Imformation" ist leichter zu erkennen und zu korrigieren als in der Abkürzung "Imf."

Die Vorlesung erläutert, wie Daten unter Hinzufügung von (möglichst nur wenig) Redundanz codiert werden, sodass Fehler erkennbar und ggf. sogar korrigierbar sind. Auf der anderen Seite wird gezeigt, wie systematisch (möglichst viel) Redundanz entfernt wird und damit die Daten komprimiert werden.

Fehler­erkennung und -korrektur

Daten­kompression

In den Übungen werden Aufgaben zu den Themen der Vorlesung bearbeitet und besprochen. Ferner werden einige der Verfahren im Computer­labor implementiert.

 

Algorithmen: weitere Themen

4-std., Vorlesung und Labor, 6. Semester
Bachelor-Studiengang Angewandte Informatik

Die Vorlesung stellt eine Fortsetzung der Algorithmen-Vorlesung dar.

 

Sortier­verfahren auf Prozessor­feldern     english Version

Divide-and-Conquer-Methode

Approximations­verfahren für NP-schwere Probleme

 

Sonstiges

 

 

[up]

 


H.W. Lang   mail@hwlang.de   Impressum   Datenschutz
Diese Webseiten sind während meiner Lehrtätigkeit an der Hochschule Flensburg entstanden