05.09.2010 12:56 Uhr (GMT+1)

Thorsten Rood
Thorsten Rood

Kontakt

Optionen
  
Zeitzone
International
english

Navigationshilfe: Start / FernUniversität / Informatikstudium: Grundstudiumskurse / Hauptfach /

Praktische Informatik

Inhalte

Vor Beginn des Studiums habe ich mir mein Taschengeld als Programmierer aufgebessert. Dadurch erforderte die Bearbeitung der nachfolgenden Kurse nicht sehr viel Aufwand. Wenn man als Anfänger ein Erstsemesterpaket aus den Belegungsempfehlungen umsetzen möchte, sollte man bereits deutlich vor dem Semesterbeginn anfangen, programmieren zu lernen.

Prüfungsanforderungen

Der Bereich praktische Informatik setzt sich zusammen aus Kursen, einer Programmieraufgabe und einer mündlichen Abschlussprüfung. Für das Vordiplom (Diplom II) sind folgende Hürden zu nehmen:

Kurse

01578 PASCAL für Informatiker
Die gleichzeitige Bearbeitung der beiden Programmierkurse 01578 und 01612 dürfte Anfängern etwas schwer fallen, da im 2-Wochen-Rhythmus die Aufgaben eingereicht werden müssen, um Punkte für die Klausurzulassung zu erhalten.
Der Kurstext bezieht sich auf ein Lehrbuch, welches zur Bearbeitung der Aufgaben zwar notwendig ist, zuletzt aber 1995 überarbeitet wurde. Dadurch wird der Inhalt zwar nicht schlecht, doch finde ich, dass auch das Erscheinungsbild eines Lehrtextes erheblich zum Verständnis beitragen kann - oder auch nicht. Allerdings dürfte es inzwischen reichlich schwierig sein, überhaupt noch brauchbare "kommerzielle" Literatur zum Thema PASCAL zu bekommen...
01612 Konzepte imperativer Programmierung
Als ein Ziel dieses Kurses gilt die saubere Umsetzung und Implementation von einfachen Problemstellungen. Von Anfang an wird deshalb ein entsprechender Programmierstil vorgeschrieben und penibel kontrolliert. In einigen Punkten weicht diese Normierung zwar deutlich vom PASCAL-Marktführer Borland/Inprise ab, doch prinzipiell ist der Ansatz auf jeden Fall gerechtfertigt. Um Missverständnisse in der Auslegung/Bewertung der Programmierrichtlinien zu vermeiden, können die Aufgaben online - vorab - auf dem Webserver der FernUni getestet werden, um formale Macken auszubügeln.
Im zweiten Teil des Kurses werden Aspekte der Programmverifikation betrachtet. Die konkrete Umsetzung wird zwar schon bei kleinen Programmen ohne Hilfsmittel zur Qual, doch helfen die vorgestellten Methoden und Ideen auf jeden Fall, Programmierfehler schneller einkreisen zu können.
01663 Datenstrukturen
Zu den Standardproblemstellungen wie sortieren und Verwaltung dynamischer Mengen werden verschiedene Konzepte vorgestellt. Im vertiefenden Teil werden geometrische Probleme genauer besprochen.
Es spielt keine Rolle, in welcher Reihenfolge diese Kurse studiert werden. Ich empfehle die parallele Bearbeitung der ersten beiden Kurse, da diese inhaltlich sehr verwandt sind und man dadurch den Bearbeitungsaufwand reduzieren kann.

Klausuren

1x Datenstrukturen oder Konzepte imperativer Programmierung
Eines der beiden Fächer muss durch eine erfolgreiche Klausurnote dokumentiert werden. Es ist sinnvoll, in beiden Kursen die Klausur zu schreiben, um sich in Hinblick auf die mündliche Fachprüfung alle Optionen offen zu halten.
1x PASCAL für Informatiker
Für die Teilnahme am Programmierpraktikum ist der Nachweis von Programmierkenntnissen erforderlich. In meinem Fall wurde die Lösung der Aufgabenstellung auf Basis von PASCAL verlangt, so dass der Schein in 01578 notwendig war.
In der letzten Zeit wird das Praktikum oft auf Basis von Java durchgeführt, so dass hier Unterschiede je nach Semester, zuständigem Fachbereich und Themenwahl auftreten können.

Prüfung

21110
oder
21120

früher:
C1805
mündliche Fachprüfung praktische Informatik, ~ 25 Min.
Konzepte imperativer Programmierung oder Datenstrukturen
Die Prüfung deckt genau den Komplementärteil zur Klausur ab. Nach meinem persönlichen Empfinden dürfte im Rahmen eines mündlichen Interviews das Thema Programmierung leichter zu absolvieren sein, als die Behandlung von Algorithmen und Strukturen.
Der Lern- und Arbeitsaufwand für die Prüfung hielt sich jedenfalls in Grenzen - und 'ne zwei "für's Nix-tun" reicht mir völlig aus.

Praktikum

01580 Programmierpraktikum
Im Rahmen des Praktikums muss eine Aufgabe in Einzelarbeit gelöst und mit Dokumentation eingereicht werden. Dafür steht ca. 2/3 des Semesters zur Verfügung - ausreichend Zeit bei vernünftiger Planung. Als ich das Praktikum absolviert habe, galt es, in PASCAL einen Push-Down-Automaten (vgl. theoretische Informatik B) zu programmieren, welcher seine Konfiguration aus einer externen Datei lesen sollte und auf sich selbst eine dort ebenfalls enthaltene Eingabe anwenden musste und entweder mit akzeptierenden oder verneinenden Zustand enden musste.
Das ist vergleichbar mit einem Syntax-Parser, welcher sein Regelwerk aus einer externe Dateiquelle bezieht und dann eine Zeichenfolge auf Gültigkeit prüfen muss.
Zur Vereinfachung durfte die Mehrheit der Dokumentation in den Source-Code verlagert werden; dafür wurde der verfügbare PASCAL-Befehlssatz stark reglementiert. Ich habe mich kurzerhand für 4 Wochenenden eingeschlossen und in der Zeit meinen Lösungsvorschlag fertiggestellt. Die Lösung ist zwar verbesserungswürdig, aber für einen Score von 94% hat's gereicht.

Für die Teilnahme am Programmierpraktikum muss die mündliche Fachprüfung in praktischer Informatik bereits erfolgreich abgelegt sein! Die Bearbeitung des Hardwarepraktikums in derselben Zeit führt aus Zeitgründen zu leicht erhöhtem Adrenalinspiegel...

Materialien und Unterstützung

 
Browser
MSIE-tested Firefox-tested Opera-tested
© thr 1997-2010
all rights reserved
Version 2010.03.14 v1.11, 13.05.2006