Fachbereich Informatik und Mathematik
Institut für Informatik
Professur für Datenbanken und Informationssysteme
Professur für Künstliche Intelligenz und Softwaretechnologie
Uni Frankfurt Institut für Informatik
KIST DBIS

Grundlagen der Programmierung 2 [PRG-2]

Sommersemester 2012

Aktuelles
Klausurergebnisse
Die Klausurergebnisse der Klausur vom 12.10.2012 sind über den folgenden Button abrufbar: und sie hängen links neben Zimmer 216 aus.
Die Klausureinsicht findet am Freitag, den 19.10.2012 von 10:30-12:00h in Raum 205a (Robert-Mayer-Str. 11-15, Informatik) statt.
Videos
Die Videoaufzeichnungen sind hier zu finden.
Videos vom SoSe 2011 sind hier zu finden (Achtung die Inhalte stimmen nicht mit der aktuellen Vorlesung überein!)
Sowohl Login als auch Passwort entsprechen jeweils dem Passwort der Übungsanmeldung.
Haskell Compiler - GHC
Hinweise zum Benutzen und zur Selbstinstallation des GHC / GHCi sind auf dieser Seite zu finden.
Inhalt
Die Veranstaltung findet als gemeinsame Veranstaltung der Professuren für Künstliche Intelligenz und Softwaretechnologie (KIST) und für Datenbanken und Informationssysteme (DBIS) statt. Die erste Hälfte wird von Herrn Prof. Dr. M. Schmidt-Schauß (KIST) gehalten. Die zweite Hälfte wird von Herrn Dr. K. Tolle (DBIS) gehalten. Hierbei sind folgende Inhalte vorgesehen.
Übersicht über Sprachparadigmen:
Funktionale Programmierung, Rekursion und Iteration, Typisierung, Operationale Semantik für funktionale Programmiersprachen, parallele Programmierkonzepte.
Einführung in den Compilerbau
Einführung in Datenbanksysteme:
Architekturen, konzeptionelle und logische Modelle, Entity- Relationship-Modell, Relationenmodell, Normalformen, Datenbankdesign, Abfragesprachen (SQL).
Vorlesung
Mittwoch, 9 Uhr c.t., Jügelhaus - Hörsaal VI
Übung
Die Anmeldung zu den Übungsgruppen war bis zum 16.04.12, 14:00 Uhr möglich.
Die Verteilung der Teilnehmer und Teilnehmerinnen hat stattgefunden. Über den folgenden Button können Sie erfahren, welcher Übungsgruppe sie zugeordnet wurden:
Übungszuordnung


Nicht-angemeldete Studierende können die folgenden Übungen besuchen:
  • Fr, 12-14 (Maria Enterlein)
  • Mo, 12-14 (Alina Dehler)
Bitte geben Sie beim Erscheinen in der entsprechenden Übung dem Tutor / der Tutorin Ihre Daten.

Die folgende Tabelle zeigt die Übungstermine, die Tutoren (samt Email-Adresse) und die Räume. Die Räume NM XXX befinden sich in der Neuen Mensa im ersten Stock, der Raum SR 9 ist in der Robert-Mayer-Str. 11-15, Institut für Informatik im Erdgeschoss, Hörsaal A befindet sich im Jügelhaus (Mertonstr. 17-21, Erdgeschoss) direkt am Haupteingang der Universität am Campus Bockenheim.

Zeit Montag Dienstag Mittwoch Donnerstag Freitag
8-10 NM 117
Sadik Yel
10-12 NM 120
Viktor Gesiarz
12-14 NM 117
Alina Dehler
SR 9
Aybike Demirsan
NM 133
Viktor Gesiarz
Hörsaal A
Wahed Hemati
SR 9
Max Hofmann
NM 114
Maria Enterlein
14-16 NM 117
Max Hofmann
16-18 NM 116
Luke Ewig

Unterlagen Teil I: Funktionales Programmieren & Compilerbau
Skript
Folien
Unterlagen Teil II: Datenbanken
Folien
Programme
Aufgaben
Die Abgabe der Aufgabenblätter ist jeweils bis zum Beginn der Vorlesung am Mittwoch möglich.
Verspätete Abgaben werden i.A. nicht angenommen. Im Hörsaal sind werden entsprechende Kästen bereit gestellt.
Wer mittwochs morgen nicht pünktlich zur Abgabe erscheinen kann, hat die Möglichkeit sein Übungsblatt bereits vorher (z.B. Dienstag Nachmittag) abzugeben:
Links neben Raum 216 (2.Stock, Robert-Mayer-Str. 11-15 (Informatikgebäude)) ist ein weißer Briefkasten, in den die Abgaben eingeworfen werden können.

Bei der Abgabe sollten Sie beachten:
  • Ihr Name und Ihre Übungsgruppe (erfahren Sie ca. 1 Woche nach Anmeldung) sollten lesbar auf der ersten Seite Ihrer Abgabe stehen
  • Bei Abgabe im Hörsaal: Bitte die Abgabe in den richtigen Kasten werfen.
  • Zu implementierende Programme sollten stets zusätzlich zur Abgabe auf Papier auch per Email an den entsprechenden Tutor geschickt werden.
Aufgabenbatt 1
Aufgabenblatt 1 ist bis zum 18.04.2012 zu lösen.
Aufgabenbatt 2
Aufgabenblatt 2 ist bis zum 25.04.2012 zu lösen.
Aufgabenbatt 3
Aufgabenblatt 3 ist bis zum 02.05.2012 zu lösen.
Aufgabenbatt 4
Aufgabenblatt 4 ist bis zum 9.05.2012 zu lösen.
Aufgabenbatt 5
Aufgabenblatt 5 ist bis zum 16.05.2012 zu lösen.
Aufgabenbatt 6
Aufgabenblatt 6 ist bis zum 23.05.2012 zu lösen.
CombParser.hs Parser-Kombinatoren die in Aufgabe 2 benötigt werden.
Bsp. zu Parser-Kombinatoren und kommentierter Quellcode
Aufgabenbatt 7
Aufgabenblatt 7 ist bis zum 30.05.2012 zu lösen.
Aufgabenbatt 8
Aufgabenblatt 8 ist bis zum 13.06.2012 zu lösen.
Musterlösung zur Aufgabe 2
Aufgabenbatt 9
Aufgabenblatt 9 ist bis zum 20.06.2012 zu lösen. Musterlösung zur Aufgabe 2 Blatt 9 (ER-Diagramm Krankenhaus)
Aufgabenbatt 10
Aufgabenblatt 10 ist bis zum 27.06.2012 zu lösen.
Aufgabenbatt 11
Aufgabenblatt 11 ist bis zum 04.07.2012 zu lösen.
Aufgabenbatt 12
Aufgabenblatt 12 ist bis zum 11.07.2012 zu lösen.
-->
Weiteres Material

Zur Programmiersprache Haskell:

Offizielle Homepage zu Haskell
http://haskell.org
Haskell 98 Report (Offizielle Sprachdefinition von Haskell 98)
http://www.haskell.org/onlinereport (Online-Version)
http://haskell.org/definition/haskell98-report.pdf (PDF)
Dokumentation der 'Haskell Hierarchical Libraries' (Standard-Programmbibliotheken zu Haskell)
http://www.haskell.org/ghc/docs/latest/html/libraries/
Implementierungen
Haskell Platform: http://hackage.haskell.org/platform
Glasgow Haskell Compiler (GHC): http://haskell.org/ghc
Haskell User Gofer System (HUGS): http://haskell.org/hugs
Weitere Implementierungen: http://www.haskell.org/implementations.html
Bücher
Manuel M. T. Chakravarty / Gabriele C. Keller: Einführung in die Programmierung mit Haskell
Miran Lipovaca: Learn You a Haskell for Great Good! (Aus dem Netz der Universität kostenlos zugänglich (E-Book-Lizenz der Universitätsbibliothek))
Marco Block, Adrian Neumann: Haskell-Intensivkurs: Ein kompakter Einstieg in die funktionale Programmierung (Aus dem Netz der Universität kostenlos zugänglich (E-Book-Lizenz der Universitätsbibliothek))
Simon Thompson: Haskell: The Craft of Functional Programming
Weitere Bücher: http://www.haskell.org/haskellwiki/Books#Textbooks
Tutorials
A Gentle Introduction to Haskell: http://www.haskell.org/tutorial/
Weitere Tutorials: http://www.haskell.org/haskellwiki/Books#Papers_available_on_the_Web

Zu Datenbanken:

Bücher
Batini, Navathe, Ceri: "Conceptual Database Design: An Entity-Relationship Approach", Benjamin-Cummings
Kemper, Eickler: "Datenbanksysteme. Eine Einführung", Oldenbourg
Ramez Elmasri und Shamkant B. Navathe, 'Grundlagen von Datenbanksystemen', Pearson Studium, 2002
Gottfried Vossen, 'Datenbankmodelle, Datenbanksprachen, Datenbankmanagement-Systeme', Oldenbourg, 2000
Bernstein, Hadzilacos, Goodman, 'Concurrency Control and Recovery in Database Systems', Addison-Wesley, 1987
SQL:
SQL Tutorial (deutsch): http://www.sqltutorial.de/
SQL Tutorial (englisch): http://www.intermedia.net/support/sql/sqltut.asp
SQL Online ausprobieren: http://sqlzoo.net/
Kontakt
Für allgemeine bzw. organisatorische Fragen können Sie sich per Email an prg2.2012@ki.informatik.uni-frankfurt.de
Weitere Informationen
Studienfächer / Studienrichtungen:
  • BSc Informatik: Pflichtveranstaltung im Basismodul B-PRG: Programmierung
  • L3 Informatik: Pflichtveranstaltung im Modul L3-CS-PRG Grundlagen der Programmierung
  • BSc Bioinformatik: Pflichtveranstaltung im Bioinf. Modul 2 Grundlagen der Programmierung (B-PRG)
  • BSc Physik der Informationstechnik: Pflichtveranstaltung im Modul 9: Informatik A
(c) 2012 KIST, DBIS, Impressum