252-0842-00L  Programmieren und Problemlösen

SemesterFrühjahrssemester 2016
DozierendeA. L. Schüpbach
Periodizitätjährlich wiederkehrende Veranstaltung
LehrspracheDeutsch


KurzbeschreibungEinführung in die Programmierung in Java und in das Problemlösen mittels Standard-Algorithmen und -Datenstrukturen.
LernzielDie Ziele der Lehrveranstaltung sind einerseits mit der Programmiersprache Java
vertraut zu sein und andererseits gegebene Probleme des eigenen Fachbereichs
(z.Bsp. Datenverarbeitung) mittels eigener Programme lösen zu können.

Die Studierenden sollen bestehende Algorithmen und Datenstrukturen
kennen, diese benutzen können und deren Eigenschaften kennen.
Das Ziel ist es, für ein gegebenes Problem eine geeignete
Datenstruktur und einen geeigneten Algorithmus auswählen zu können
und das eigene Programm, basierend auf dieser Wahl, programmieren
zu können.

Während der Lehrveranstaltung arbeiten die Studierenden an einem
eigenen Projekt, das sie während der letzten Vorlesungsstunde
präsentieren müssen.
InhaltFolgende Themen werden behandelt:
- Programmierkonzepte vs. Programmiersprachen
- Einführung in Java
- Arrays
- Methoden und Methodenparameter
- Klassen, Typen und Objekte
- I/O: Tastatureingaben, Bildschrimausgaben, Dateien lesen und schreiben
- Exceptions
- Datenstrukturen
- Objektorientiertes Programmieren
- Einführung in GUI-Programmierung
- Design-Patterns
- Threads


Während der Übungsstunde wird erklärt, wie Java, Eclipse und Subversion
auf dem eigenen Laptop installiert werden können.

Das eigene Projekt muss im Repository gespeichert werden.
Das Projekt muss während der letzten Vorlesung
präsentiert werden.
SkriptVorlesungswebseite: Link
Literatur- Sprechen Sie Java? Eine Einführung in das systematische Programmieren,
Hanspeter Mössenböck, dpunkt.verlag
- Java-API, Oracle, Java-API
- The Java Language Specification Java SE 7 Edition,
James Gosling, Bill Joy, Guy Steele, Gilad Bracha, Alex Buckley JLS7
Voraussetzungen / BesonderesVoraussetzungen:
- Einsatz von Informatikmitteln (252-0839-00)
- Anwendungsnahes Programmieren mit MATLAB (252-0840-01)