Dozentin
Jun.-Prof. Dr.-Ing. Elke Pulvermüller
Übungsleiter
Dipl.-Inf. Wolfgang Runte
Tutoren
Julian Kniephoff (jkniepho "at" uos.de ),
Sergiy Krutykov, B.Sc. (skrutyko "at" uos.de ),
Daniel Künne, B.Sc. (dakuenne "at" uos.de ),
Michael Meese (mmeese "at" uos.de ),
Philipp Middendorf (pmiddend "at" uos.de ),
Philip Münch (pmuench "at" uos.de ),
Ilja Muhl (ilmuhl "at" uos.de ),
Mareike Paul, B.Sc. (mpaul "at" uos.de ),
Dirk Stürzekarn (dstuerze "at" uos.de ),
Christoph Waßmuth (cwassmut "at" uos.de )
Vorlesung
Übung
Beide Übungen haben den gleichen Inhalt.
Beginn
Dienstag, 6. April 2010 (erste Übung am 15. April)
Prüfungstermin
Freitag, 02.07.2010, 13:00 Uhr - 15:00 Uhr (s.t.!) ,
Raum 01/E01+E02
Anmeldung über OPIuM erforderlich!
Übersicht über die Ergebnisse
Wiederholungsprüfung
Montag, 27.09.2010, 09:00 Uhr - 11:00 Uhr (s.t.!) ,
Raum 01/E01-E02 (Achtung: Raumangabe wurde geändert!)
Anmeldung über OPIuM erforderlich!
Inhalt
Die Veranstaltung führt in die objekt-orientierten Konzepte und
Programmierung mit Java ein. Die behandelten Konzepte werden durch
Programmieraufgaben eingeübt und vertieft.
Literatur
Ullenboom, C.:
Java ist auch eine Insel ,
Galileo Press, 8. Auflage 2009,
1475 S., ISBN: 978-3-8362-1371-4; 49,90 €
(online und als Download verfügbar)
Krüger, G.; Stark, T.:
Handbuch der Java-Programmierung ,
Addison-Wesley, 5. Auflage 2008,
1332 S., ISBN: 978-3-8273-2815-1; 39,95 €,
Online-Vorschau
(online im Uni-Netz und als Download verfügbar)
Middendorf, S.; Singer, R.; Heid, J.:
Java. Programmierhandbuch und Referenz ,
dpunkt.verlag, 3. Auflage 2002,
1151 S., ISBN: 978-3-89864-157-9; 50,00 €
(online verfügbar)
Heinisch, C.; Müller, F.; Goll, J.:
Java als erste Programmiersprache ,
Teubner, 5. Auflage 2007,
1235 S., ISBN: 978-3-8351-0147-0; 39,95 €,
Online-Vorschau
Eckel, B.:
Thinking in Java ,
Prentice Hall, 4th Edition 2006,
1520 S., ISBN: 978-0-1318-7248-6; 59,09 €,
Webseite
(die ältere 3rd Edition
aus dem Jahr 2002 ist
online im Uni-Netz und als
Download verfügbar)
Flanagan, D.:
Java in a Nutshell ,
O'Reilly, 5th Edition 2005,
1254 S., ISBN: 978-0-5960-0773-7; 35,95 €,
Online-Vorschau
(als Safari Book Online im Universitätsnetz freigeschaltet)
Flanagan, D.:
Java Examples in a Nutshell ,
O'Reilly, 3rd Edition, 2004,
718 S., ISBN: 978-0-5960-0620-4; 30,99 €,
Online-Vorschau
(als Safari Book Online im Universitätsnetz freigeschaltet)
Schiedermeier, R.:
Programmieren mit Java. Eine methodische Einführung ,
Pearson Studium, 2004,
480 S. ISBN: 978-3-8273-7116-4; 39,95 €
Gamma, E.; Helm, R.; Johnson, R.; Vlissides, J.:
Design Patterns, Elements of Reusable Object-Oriented Software ,
Addison-Wesley, 1995,
416 S., ISBN: 978-0-2016-3361-0; 40,95 €
Gamma, E.; Helm, R.; Johnson, R.; Vlissides, J.:
Entwurfsmuster. Elemente wiederverwendbarer objektorientierter Software ,
Addison-Wesley, 2009,
504 S., ISBN: 978-3-8273-2824-3; 44,00 €,
Online-Vorschau
weitere, online verfügbare Bücher
Vorlesungsmaterial
Das Vorlesungsmaterial wird im Laufe des Semesters zusammengestellt
und wöchentlich überarbeitet/ergänzt.
Foliensatz 1: Einleitung (Organisatorisches, Literatur, Inhalt)
Vorlesungsskript, Teil 1: Einleitung und Kapitel 1 - Grundlegende objektorientierte Konzepte (Fundamental Concepts)
Vorlesungsskript, Teil 2: Kapitel 2 - Grundlagen der Software-Entwicklung
Vorlesungsskript, Teil 3: Kapitel 3 - Wichtige OO Konzepte (Vererbung, Typen)
Vorlesungsskript, Teil 4: Kapitel 3 - Wichtige OO Konzepte (Hilfsmittel zur Modularisierung, Beziehungen)
Vorlesungsskript, Teil 5: Kapitel 3 - Wichtige OO Konzepte (Beziehungen), Kapitel 4 - Zusätzliche OO Konzepte (Fehlerbehandlung, Generizität, Polymorphie)
Vorlesungsskript, Teil 6: Kapitel 4 - Zusätzliche OO Konzepte (Persistenz)
Vorlesungsskript, Teil 7: Kapitel 4 - Zusätzliche OO Konzepte (Nebenläufigkeit)
Vorlesungsskript, Teil 8: Kapitel 5 - Klassenbibliotheken
Vorlesungsskript, Teil 9: Kapitel 6 - Grafische Benutzeroberflächen (GUI)
Vorlesungsskript, Teil 10: Kapitel 7 - Netzwerkprogrammierung
Außerdem: Quelltexte aus der Vorlesung (und darüberhinaus).
Termine
1.
05.04.2010
Ostermontag
06.04.2010
Einleitung (Organisatorisches, Literatur, Inhalt )
2.
12.04.2010
Grundlegende objektorientierte Konzepte (Objekte, Klassen und Instanzen, Modellierungsprinzipien und UML, Identität, Sichtbarkeitsbereiche, Methodenparameter und Rückgabewert )
13.04.2010
Grundlegende objektorientierte Konzepte (Überladen von Methoden, Spezielle Methoden, Gleichheit bzw. Identität von Objekten, Klasseneigenschaften )
3.
19.04.2010
Grundlegende objektorientierte Konzepte (Der Singleton ), Grundlagen der Software Entwicklung (Die Programmiersprache Java, Vom Programm zur Maschine )
20.04.2010
Grundlagen der Software Entwicklung (Abstraktion von der Plattform, Vom Problem zum Programm )
4.
26.04.2010
Grundlagen der Software Entwicklung (Vom Problem zum Programm, Programmiersprachenparadigmen ), Wichtige objektorientierte Konzepte (Beziehungen: Vererbung )
27.04.2010
Wichtige objektorientierte Konzepte (Beziehungen: Vererbung, Typing: Type Casts, Dynamisches Binden )
5.
03.05.2010
Wichtige objektorientierte Konzepte (Typing: Dynamisches Binden, Substitutionsprinzip, Autoboxing ), Wichtige objektorientierte Konzepte (Hilfsmittel zur Modularisierung: Abstrakte Klassen, Interface )
04.05.2010
Wichtige objektorientierte Konzepte (Hilfsmittel zur Modularisierung: Interface, Entwicklung mit Schnittstellen, Paket )
6.
10.05.2010
Wichtige objektorientierte Konzepte (Hilfsmittel zur Modularisierung: Paket, Beziehungen (2): Assoziation, Aggregation, Komposition, Benutzt-Beziehung/Using, Abgrenzung, Verfeinerungen der Beziehungen (mit UML), Abhängigkeit/Dependency )
11.05.2010
Wichtige objektorientierte Konzepte (Beziehungen (2): Dynamische Modellierung der Beziehungen: UML-Sequenzdiagramme ), Zusätzliche objektorientierte Konzepte (Fehlerbehandlung: Zusicherungen/Assertions, Ausnahmen/Exceptions )
7.
17.05.2010
Zusätzliche objektorientierte Konzepte (Fehlerbehandlung: Ausnahmen/Exceptions, Fehler/Errors, Darstellung in UML, Laufzeitstapel/Stack Trace )
18.05.2010
Zusätzliche objektorientierte Konzepte (Generizität: Nutzen und mögliche Alternativen, Umsetzung, Erweiterungen, Modellierung in UML, Generizität bei Objekt- und Klassenmethoden, Polymorphie/Polymorphismus )
8.
24.05.2010
Pfingstmontag
25.05.2010
Zusätzliche objektorientierte Konzepte (Persistenz: Datei-/Verzeichnisverwaltung, I/O-Streams )
9.
31.05.2010
Zusätzliche objektorientierte Konzepte (Persistenz: I/O-Streams, Serialisierung )
01.06.2010
Zusätzliche objektorientierte Konzepte (Nebenläufigkeit: Threads, Java Threads, Thread Zustände )
10.
07.06.2010
Zusätzliche objektorientierte Konzepte (Nebenläufigkeit: Threads und Fehler, Synchronisation
08.06.2010
Zusätzliche objektorientierte Konzepte (Nebenläufigkeit: Synchronisation ), Klassenbibliotheken (Klassenbibliotheken allgemein, Java Collection Framework (JCF), JCF Organisation und Aufbau, JCF Schnittstellen, JCF Implementierungen )
11.
14.06.2010
Klassenbibliotheken (JCF Implementierungen, JCF Algorithmen, Typsicherheit, Iteration: Das Entwurfsmuster Iterator, Exkurs: Entwurfsmuster, Iteration in Java, JCF Wrapper-Implementierung, Exkurs: Innere Klassen )
15.06.2010
Grafische Benutzeroberflächen (GUI, Abstract Window Toolkit (AWT), AWT-Komponenten im Package: Fenstertypen, AWT-Komponenten: Steuerelemente, Anordnung der AWT-Komponenten (Layout), Ereignisverarbeitung (Event Handling), Adapterklassen für Listener-Schnittstellen, Beobachter-Muster (Observer-Pattern), Swing )
12.
21.06.2010
Grafische Benutzeroberflächen (Model-View-Controller-Prinzip/Muster, MVC ), Netzwerkprogrammierung (Netzwerke Grundlagen, Netzwerkprotokolle, Adressierung )
22.06.2010
Netzwerkprogrammierung (Adressierung, Sockets, Client/Server, Implementierung in Java, Client Seite, Server Seite, UDP Paket-Verbindung in Java, Höhere Kommunikation ), Grafische Benutzeroberflächen (GUIs und Programme im Web: Applets )
13.
28.06.2010
Prüfungsvorbereitung (Plenum in Raum 66/E34 )
29.06.2010
Sprechstunde (spezifische Fragen nach Bedarf, einzeln oder gruppenweise in Raum 31/318 )
Leistungsnachweis
Als Leistungsnachweis wird generell ein numerisch und ECTS-benoteter
Übungsschein vergeben bzw. eine entsprechende Modulprüfungsleistung bescheinigt.
Voraussetzung für den Erwerb des Übungsscheins sowie Grundlage für die Note
ist die erfolgreiche Teilnahme an einer Abschlussprüfung.
Um die Zulassung zu dieser Prüfung zu erhalten, ist die erfolgreiche Teilnahme am
Übungsbetrieb zur Vorlesung in diesem oder einem der vorhergehenden Semester erforderlich.
Als Erfolg gilt hierbei jeweils (pro Aufgabenblatt) 50% der möglichen Punkte bei n-1 der
n Übungsblätter.
ECTS-Leistungen müssen nach deutschen Kriterien numerisch benotet werden, die Nummern
werden dann nach dem vorgegebenen Schlüssel auf die ECTS-Buchstaben abgebildet.