Grundvorlesung
"Grundlagen der Programmierung I"
| Veranstalter: |
Prof. Dr. Andreas Schwill, Jan
Hackel |
| Zielgruppe: |
Grundstudium |
| Umfang: |
4 SWS Vorlesung, 2 SWS Übung (: Die
4 h Vorlesung pro Woche werden eher selten in Anspruch genommen; in der
Regel finden nur 2h Vorlesung pro Woche, meist donnerstags, statt. Der
Mittwochstermin dient als Ausweichtermin.). |
| Leistungspunkte: |
6 benotete Punkte |
| Beginn (Vorlesung): |
21.10.2009 (Mittwoch!) |
| Zeit (Vorlesung): |
(mittwochs 12.00-14.00 Uhr nur in Ausnahmefällen)
donnerstags 18.00-20.00 Uhr |
| Ort (Vorlesung): |
(mittwochs: 3.6.H05)
donnerstags: 3.6.H04 |
| Beginn (Übung): |
44. Woche |
| Zeit und Ort (Übung): |
G1: montags 8.00-10.00 Uhr, 3.6.S17
G2: montags 10.00-12.00 Uhr, 3.6.S22
G3: montags 14.00-16.00 Uhr, 3.4.0.02
G4: dienstags 10.00-12.00 Uhr, 3.6.S16
G5: dienstags 10.00-12.00 Uhr, 3.4.0.02
G6: montags 16.00-18.00 Uhr, 3.6.H08 |
 |
Große Teile der Veranstaltung werden über das Online-Learningsystem
Moodle abgewickelt. Zugang hier. |
Inhaltsübersicht
-
Einführung in die Informatik
-
Begriffsdefinition, Teilgebiete, Geschichte,
Einordnung in den Wissenschaftskanon
-
Vom Problem zum Algorithmus
-
Naive Entwicklung eines Algorithmus,
Merkmale von Algorithmen, Sprachmittel für die Darstellung von Algorithmen,
Konstruktoren
-
Grenzen der Algorithmisierung
-
nicht-berechenbare Funktionen, Selbstanwendungs-/Halteproblem
-
Vom Algorithmus zum Programm
-
Zwang zur Präzisierung von Algorithmen,
Präzisierung von Daten und Anweisungen, Entwicklung einer (imperativen)
Programmiersprache
-
Vom Programm zum Computer
-
Von-Neumann-Rechner, Maschinen- und
Assemblersprachen, Ebenenmodell der Rechnerarchitektur, Übersetzer,
Interpreter
-
Fundamentale Ideen der Informatik
-
Teilgebietsübergreifende typische
Denkweisen und Methoden der Informatik
-
Informatische Modellbildung
-
Begriff des Modells, Informatik als
Wissenschaft ausführbarer Modelle
-
Funktionale Spezifikation
-
Präzisierung von Problemen
-
Präzisierung von Daten
-
elementare Datentypen, Konstruktoren,
wichtige Datentypen (File, Baum)
-
Funktionale Programmierung
-
Funktionen als Objekte, Funktionale,
Currying, Rechenvorschriften, Sprachelemente für Funktionen, Substitutionsregeln,
Rekursion, Polymorphie
-
Grundlagen der Programmiersprachen
-
Syntaxdefinitionen mittels Syntaxdiagrammen,
Backus-Naur-Form, Semantikdefinitionen mittels denotationaler Ansätze,
Semantik rekursiver Funktionen, Fixpunkte
Leistungserfassungsprozeß
Am Schluß der Vorlesung wird eine Klausur angeboten. Sie erhalten
eine Note gem. §10 der Prüfungsordnung. Eine Nachklausur wird
ebenfalls angeboten. Diese zählt als 2. Prüfung für Studierende
nach neuer Ordnung 2008; Studierende nach alter Ordnung dürfen teilnehmen,
wenn sie bei der 1. Klausur erkrankt waren oder teilgenommen haben, diese
aber nicht bestanden haben.
Die Bearbeitung der wöchentlichen Übungsaufgaben ist freiwillig,
wird aber dringend empfohlen. Ausgewählte Übungsaufgaben
werden in der Vorlesung vorgerechnet. In den Übungen werden weitere
Aufgaben zur unmittelbaren gemeinsamen Bearbeitung behandelt. Zur intensiven
Besprechung der Übungsaufgaben außerhalb der wöchentlichen
Übungen stehen alle Lehrenden zur Verfügung.
Belegung
Die Belegung erfolgt elektronisch entsprechend der Bestimmungen des
Instituts
für Informatik.
Literaturhinweise
-
Claus, V.: Schwill, A.: Duden - Informatik,
Bibliographisches Institut 2001
-
Goos, G.: Vorlesungen über Informatik,
Bd. 1: Grundlagen und funktionales Programmieren, Springer 1995
-
Lippe, W.M.: Funktionale und Applikative
Programmierung, Springer 2009
-
Pepper, P.: Funktionale Programmierung
in OPAL, ML, Haskell und Gofer, Springer 2002
-
Rabhi/Lapalme: Algorithms - A functional
programming approach, Addison-Wesley 1999
-
Sedgewick, R.: Algorithmen in C, Pearson
2005
-
Smolka, G.: Programmierung - Eine Einführung in die Informatik mit
Standard ML, Oldenbourg 2008
-
Ullman, J.: Elements of ML programming,
Prentice Hall 1997
-
Vogt, C.: Informatik - eine Einführung
in Theorie und Praxis, 2004
-
Wikström, A.: Functional programming
using standard ML, Prentice-Hall 1987
Skriptum
Begleitend zur Vorlesung erscheinen Skript und Audio-Mitschnitte einer
vergangenen Veranstaltung.
Begleitmaterial
Zum Einstieg in die Programmiersprache
ML und zur Nutzung von UNIX sind Begleitmaterialien
verfügbar.
Note: §10 der Prüfungsordnung
bestimmt die Form der Noten: Zulässig sind 1,0 bis 4,0 mit Zwischennoten
sowie 5,0 (= nicht bestanden, kein Erwerb von Leistungspunkten).
|