[Stud.IP]
[Lernziele]
[Dozent]
[Termine]
[Ablaufplanung]
[Materialien]
[Bücher]
[Software]
[Links]
MARTIN-LUTHER-UNIVERSITÄT HALLE-WITTENBERG
Institut für Informatik
Prof. Dr. Stefan Brass
Objektorientierte Programmierung
(Winter 2006/2007)
Damit sich Informationen über die Klausur
vor der Nachklausur nicht unkontrolliert verbreiten,
und alle Teilnehmer an der Nachklausur die gleichen Informationen haben,
ist die Klausur hier verfügbar:
[PDF]
[Postscript, verkleinert].
Falls noch nicht geschehen,
schauen Sie sich auch die drei Probeklausuren
unten an.
Die Klausurnoten stehen fest und sind ausgehängt.
Klausureinsicht ist an folgenden Terminen möglich:
- Mittwoch, 14.03.2007, 10:00-12:00,
bei Frau Thüring (Raum 3.19)
- Donnerstag, 15.03.2007, 13:00-15:00,
bei Frau Thüring (Raum 3.19)
- In meiner Sprechstunde (Freitags, 12-13, Raum 3.13)
Bitte beachten Sie,
daß Sie sich (je nach Prüfungsordnung) zur Nachklausur
explizit anmelden müssen,
wenn Sie in dieser Klausur durchgefallen sind.
Die Nachholklausur ist für den 27.03.2007, 10:15-11:45, geplant.
Der Anmeldeschluss für Informatiker ist der 20.03.2007
(alle Angaben ohne Gewähr,
informieren Sie sich bitte in Ihrem Prüfungsamt).
Sie sollten auf jeden Fall etwas praktisch am Rechner programmieren
üben, bevor Sie zur Nachholklausur kommen.
Nur Skript bzw. Bücher zu lesen,
wird sehr wahrscheinlich nicht ausreichen.
Wie ich jetzt erfahren habe,
gilt für Physik-Studenten,
daß sie automatisch zur Nachklausur angemeldet bleiben
(wenn sie durch die erste Klausur durchgefallen sind
und sich nicht abmelden).
[Alle Angabe ohne Gewähr,
sichere Informationen gibt es bei dem für Sie zuständigen
Prüfungsamt.]
Interessanter Artikel von Stroustrup
über mehrfache Vererbung in C++:
[PDF].
Homepage von Stroustrup:
http://www.research.att.com/~bs/
Dies ist eine Einführung in die Programmierung
für das erste Semester
(Studiengänge Informatik und Wirtschaftsinformatik).
Nach erfolgreicher Teilnahme an dieser Vorlesung sollten Sie:
- Programmieren können
(Selbständige Erstellung eigener Programme
für gegebene Aufgaben).
- Rechner, Betriebssystem und Editor/Entwicklungsumgebung
ausreichend bedienen können.
- Gegebene Programme verstehen können.
(z.B. Klausurfrage: Was gibt dieses Programm aus?)
- Die syntaktische Korrektheit gegebener Programme beurteilen können
(dazu Syntax-Formalismen anwenden können)
- Grundkonzepte von imperativen und objekt-orientierten) Programmiersprachen
kennen,
sich leicht in neue Sprachen einarbeiten können.
Dozent
Dr. Stefan Brass
- Büro:
-
Raum 313 (Institut für Informatik, Von-Seckendorff-Platz 1)
- Sprechstunde:
-
Freitags, 12:00-13:00
(und direkt nach den Vorlesungen)
- Email:
-
brass@acm.org
- Telefon:
-
0345/55-24740 (Büro)
- Fax:
-
0345/55-27333 (im Sekretariat)
- Sekretariat:
-
Frau Vahrenhold, Telefon 0345/55-24750, Zimmer 324
Übungsleiterin
Dipl.-Inform. Annett Thühring
- Büro:
-
Raum 319 (Institut für Informatik, Von-Seckendorff-Platz 1)
- Sprechstunde:
-
Dienstags, 14:00-16:00
- Email:
-
annett.thuering(at)informatik.uni-halle.de
- Telefon:
-
0345/55-24739
Termine
Vorlesung:
- Dienstag, 10:15-11:45, Hörsaal 3.07
Übung:
- Zwei Stunden pro Woche,
es werden drei Gruppen angeboten:
Nr | Tag | Zeit | Raum | Beginn | Webseite
|
---|
1 | Montags | 14:15-15:45 | 3.34 | 23.10. |
Stud.IP
|
2 | Mittwochs | 14:15-15:45 | 3.34 | 18.10. |
Stud.IP
|
4 | Donnerstag | 12:15-13:45 | 3.34 | 19.10. |
Stud.IP
|
- Sie müssen sich zu den Übungen im StudIP anmelden.
Falls Sie dabei Hilfe brauchen,
kommen Sie bitte zur Schnupperübung am Mittwoch,
11.10.2006, 14:15-15:00, in den Rechnerpool 3.34.
Bringen Sie bitte Benutzerkennung und Passwort mit
(sollten Sie mit den Immatrikulations-Unterlagen erhalten haben).
- Die Übung wird zum Teil als Tafelübung
(Vorrechnen und Besprechen der Hausaufgaben)
und zum Teil als praktische Übung am Rechner durchgeführt
(im Windows-2000 Pool,
Raum 3.34).
- Es sind Hausaufgaben einzeln oder in Gruppen bis zu ca. 3 Personen
abzugeben.
Es können nur Personen zusammen die Hausaufgaben abgeben,
die an der gleichen Übung teilnehmen
(gleicher Termin).
Wenn Sie Hausaufgaben in einer Gruppe bearbeiten,
geben Sie bitte nur ein Exemplar für die ganze Gruppe ab.
Sie müssen jede von Ihrer Gruppe abgegebene Lösung
einzeln vorrechnen und erklären können.
Sie dürfen maximal drei Mal fehlen,
ansonsten liegt es allein im Ermessen der Übungsleiterin,
ob die Hausaufgaben-Ergebnisse angerechnet werden können.
- Die Hausaufgaben werden immer Dienstags in der Vorlesung ausgegeben
und ins Netz gestellt:
[Stud.IP]
Die Abgabe ist dann am nächsten Dienstag
bis 15:00 über die Übungsplatform in Stud.IP.
- Die maximale Gruppengröße ist verhandelbar,
aber zu ähnliche Lösungen verschiedener Gruppen
haben ernste Konsequenzen (Täuschungsversuch:
Punkteabzug für alle beteiligten Gruppen bis zu 100%).
Folien:
- 0. Informationen zur Vorlesung
[Postscript, S/W, verkleinert]
[PDF, farbig, gross]
- 1. Einführung (Folien noch nicht vollständig!)
[Postscript, S/W, verkleinert]
[PDF, farbig, gross]
- 2. Beispiele für Zuweisungen und Kontrollstrukturen
[Postscript, S/W, verkleinert]
[PDF, farbig, gross]
- 3. Lexikalische Syntax
[Postscript, S/W, verkleinert]
[PDF, farbig, gross]
- 4. Syntaxdiagramme und Grammatikregeln
(Folien sind leider noch unfertig)
[Postscript, S/W, verkleinert]
[PDF, farbig, gross]
- 5. Wertausdrücke (Expressions)
[Postscript, S/W, verkleinert]
[PDF, farbig, gross]
- 6. Anweisungen (Statements)
[Postscript, S/W, verkleinert]
[PDF, farbig, gross]
- 7. Arrays und Zeiger (Pointer)
[Postscript, S/W, verkleinert]
[PDF, farbig, gross]
- 8. Funktionen/Prozeduren
[Postscript, S/W, verkleinert]
[PDF, farbig, gross]
- 9. Klassen/Strukturen
(103 Folien)
[Postscript, S/W, verkleinert]
[PDF, farbig, gross]
- 10. Subklassen/Vererbung
(56 Folien)
[Postscript, S/W, verkleinert]
[PDF, farbig, gross]
- 11. Dynamische Speicherverwaltung
(34 Folien)
[Postscript, S/W, verkleinert]
[PDF, farbig, gross]
- 12. Überladene Funktionen und Operatoren
[in Arbeit]
- 13. Exceptions
[in Arbeit]
- 14. Templates
[in Arbeit]
- 15. Der C Präprozessor
[in Arbeit, aber es gibt meine alten Folien für C]
[Postscript, S/W, verkleinert]
[PDF, farbig, gross]
- 16. Getrennte Übersetzung/Der Linker
[in Arbeit, aber es gibt meine alten Folien für C]
[Postscript, S/W, verkleinert]
[PDF, farbig, gross]
- 17. Der Debugger
[in Arbeit, aber es gibt meine alten Folien für C]
[Postscript, S/W, verkleinert]
[PDF, farbig, gross]
Probeklausuren:
Hinweis:
Postscript-Dateien können mit
Aladdin Ghostscript
angezeigt und ausgedruckt werden.
Teurere Laserdrucker haben einen Postscript-Interpreter eingebaut.
PDF-Dateien können mit dem
Acrobat Reader angezeigt und gedruckt werden.
- 10. Oktober 2006:
Organisatorisches [Kapitel 0],
Einführung zu Computern (CPU, RAM),
Geschichte von Programmiersprachen [Kapitel 1].
- 17. Oktober 2006:
Betriebssystem, Dateien,
erstes Programmbeispiel (mit Erklärung aller Details),
Editor (sehr kurz), Compiler, Linker, Entwicklungsumgebung
[Kapitel 1].
- 24. Oktober 2006:
Variablen, Deklarationen, Basisdatentypen, Zuweisung,
Bedingungen (if), Schleifen (while, for) an Beispielen
[Kapitel 2].
- 7. November 2006:
Lexikalische Syntax [Kapitel 3],
Syntaxdiagramme [Kapitel 4].
- 14. November 2006:
Wertausdrücke/Expressions [Kapitel 5]
- 21. November 2006:
Wertausdrücke/Expressions (Forts.) [Kapitel 5],
Statements (erste Hälfte) [Kapitel 6].
- 28. November 2006:
Statements (Forts.) [Kapitel 6], Arrays (Anfang) [Kapitel 7].
- 5. Dezember 2006:
Arrays, Zeiger, const. [Kapitel 7]
- 12. Dezember 2006:
Prozeduren, Gültigkeitsbereiche, Blöcke,
Parameterübergabemechanismen, Referenzen
[Kapitel 8, fast vollständig].
- 19. Dezember 2006:
Stack, Rekursion [Rest von Kapitel 8].
Strukturen [Anfang von Kapitel 9].
Probeklausur.
- 9. Januar 2007:
Strukturen, Aufzählungstypen, Klassen
[Hauptteil von Kapitel 9].
Besprechung der Probeklausur.
- 16. Januar 2007:
Lebensdauer von Objekten, dynamische Speicherverwaltung.
Vererbung, Polymorphie.
Überladen von Funktionen, überladene Operatoren.
- 23. Januar 2007:
Parametrisierte Klassen (Templates).
Ausnahmebehandlung.
Kurzeinführung in Standard-Bibliothek (?).
- 30. Januar 2007:
Ein-/Ausgabe, Dateien.
Programme aus mehreren Modulen, Linker.
Precompiler.
- Die Klausur findet am Freitag, den 16. Februar 2007,
10:15-11:45, in Raum 509/510 statt.
- Man kann an der Klausur und der Nachholklausur nur teilnehmen,
wenn man 50% der Hausaufgabenpunkte hat
(und in den Übungen nicht zu häufig gefehlt hat,
oder beim Vorrechnen passen musste).
- Die Verwendung von schriftlichen Unterlagen
(Bücher, Notizen, Kopien, etc.)
in der Klausur ist erlaubt.
- Die Verwendung von Computern in der Klausur ist nicht erlaubt.
Insbesondere kann man die zu erstellenden Programme nicht
ausprobieren.
- Mit 65% der Klausurpunkte hat man sicher bestanden,
mit 95% bekommt man eine 1.0 (A).
Diese Grenzen werden eventuell noch gesenkt.
- Die Nachholklausur findet am Dienstag, den 27 März 2007,
10:15-11:45, in Raum 509/510 statt.
- Für Korrekturen zu den Vorlesungsmaterialien,
Vorschläge nützlicher Web-Links,
aktive Teilnahme an den Diskussionen in der Vorlesung
u.s.w. kann es Extrapunkte geben (nach Ermessen des Dozenten
bis maximal 5% der Klausurpunkte).
Ich empfehle,
sich eins der folgenden Bücher zu beschaffen
und begleitend zur Vorlesung zu lesen.
Die Reihenfolge ist mehr oder weniger zufällig
und nicht als Wertung zu verstehen.
Manche der Bücher setzen bereits Programmierkenntnisse voraus,
manche behandeln nicht die Sprache C++
(genauere Kommentare in der Vorlesung).
Von den meisten der englischsprachigen Bücher gibt es auch deutsche
Übersetzungen,
es empfiehlt sich aber im allgemeinen eher,
das Original zu lesen
(abhängig von vorhandenen Sprachkenntnissen und verfügbarer Zeit).
Falls Sie weitere Bücher für diese Liste empfehlen würden,
schicken Sie mir bitte eine EMail.
Die Verfügbarkeit der Bücher in der Universitäts-
und Landesbibliothek Halle
können Sie im OPAC
prüfen.
- Ulla Kirch-Prinz, Peter Prinz:
C++, Lernen und professionell anwenden, 3. Auflage.
mitp, 2005, ISBN 3-8266-1534-4, 895 Seiten, 44.95 Euro
Microsoft Visual C++ Book Edition auf beiliegender CD.
[Amazon.de]
- Helmut Erlenkötter:
C++, Objektorientiertes Programmieren von Anfang an, 9. Auflage.
Rowohlt, 2006, ISBN 3-499-60077-3, 332 Seiten, 10.50 Euro.
[Amazon.de]
- Bjarne Stroustrup:
The C++ Programming Language, Special Edition.
Addison-Wesley, 2000, ISBN 0-201-70073-5, 1020 Seiten,
50.89 Euro.
[Amazon.de]
- Dirk Louis:
C++ easy.
Programmieren mit einfachen Beispielen.
Markt und Technik, 2005, ISBN 3827269679, 384 Seiten,
16.95 Euro.
Mit C++ Builder X Personal Edition auf CD-ROM
(muß bei Borland aktiviert werden).
[Amazon.de]
- Scott Meyers:
Effective C++. 55 Specific Ways to Improve Your Programs and Designs,
3rd Edition.
Addison-Wesley, 2005, ISBN 0-321-33487-6, 297 Seiten,
33.89 Euro.
[Amazon.de]
- Scott Meyers:
More Effective C++. 35 New Ways to Improve Your Programs and Designs.
Addison-Wesley, 1996/(2006?),
ISBN 0-201-63371-X, 318 Seiten, 35.89 Euro.
[Amazon.de]
- RRZN (Regionales Rechenzentrum Niedersachen):
Programmiersprache C (Nachschlagewerk), 14. Aufl., 3.70 Euro
Nur beim Universitätsrechenzentrum erhältlich
(Kurt-Mothes-Straße 1, Raum 108 oder 110)
[Informationen des Rechenzentrums]
- RRZN (Regionales Rechenzentrum Niedersachen):
C++ (Von C zu C++), 12. Aufl., 3.60 Euro
Nur beim Universitätsrechenzentrum erhältlich
(Kurt-Mothes-Straße 1, Raum 108 oder 110)
[Informationen des Rechenzentrums]
- Gerhard Goos, Wolf Zimmermann:
Vorlesungen über Informatik 1.
Grundlagen und funktionales Programmieren. 4. Aufl.
Springer, 2005, ISBN 3540244050, 400 Seiten, 26.95 Euro.
[Amazon.de]
- Gerhard Goos, Wolf Zimmermann:
Vorlesungen über Informatik 2.
Objektorientiertes Programmieren und Algorithmen. 4. Aufl.
Springer, 2006, ISBN 3540244034, 375 Seiten, 26.95 Euro.
[Amazon.de]
- Hans-Jürgen Appelrath, Jochen Ludewig:
Skriptum Informatik. Eine konventionelle Einführung. 5. Aufl.
Teubner, 2000, ISBN 3519421534, 462 Seiten, 27.90 Euro.
[Amazon.de]
- Brian W. Kernighan, Dennis M. Ritchie:
The C Programming Language, 2nd Ed.
Prentice Hall, 1988, ISBN 0-13-11-362-8, 272 Seiten, 38.45 Euro.
[Amazon.de]
- Michael Seeboerger-Weichselbaum:
Programmieren mit Eclipse 3.
mitp, 2006, 3-8266-7379-4, 389 Seiten, mit CD-ROM, 29.95 Euro.
[Amazon.de]
- INCITS/ISO/IEC 14882-2003:
Programming Languages - C++.
Offizieller Standard (Kein Lehrbuch!).
PDF-Datei für $30 erhältlich beim ANSI.
[Online-Shop des ANSI]
- GNU (Free Software Foundation)
- Microsoft
- Borland
- Eclipse (Java-basierte IDE)
- Code::Blocks (Freie C++ IDE für Windows und Linux)
Dieser Abschnitt ist noch im Aufbau.
Bitte schicken Sie mir eine EMail,
wenn Sie Webseiten zum Thema der Vorlesung empfehlen möchten.
Stefan Brass
(brass@acm.org),
6. Oktober 2006
Original URL:
http://www.informatik.uni-halle.de/~brass/oop06/
[HTML 3.2 Checked]
[Links Geprüft]