[Technical Faculty]

Verteilte Programmierung in Java: Programming-in-the-many: ``Mist''


Fortgeschrittenenpraktikum: Sommersemester 2000
Veranstaltung: 8761, 8. bzw. 4 stündig
Basis: Vordiplom
Zielgruppe: Studierende im Hauptstudium


Ort: Haus II, Preußerstraße 1-9, Raum 324 (vorraussichtlich)
Termin: Vorlesungsteil: Montags, 16:00 ct
Beginn: Montag, 10. April 2000
Bemerkung: den endgültigen Termin der Veranstaltung müssen wird davon abhängig machen, wann wir Rechenzeit am Grundausbildungspool bekommen!

Schließung der Accounts im GA-Pool: 24. Juli 2000


[Inhalt] [Organisatorisches] [Gruppen] [Unterlagen] [Handouts] [Aufgaben] [Projektaufgabe Mist] [obligatorische Links] [Literatur] [Software] [Links]

Inhalt

Java ist eine moderne, objektorientierte Programmiersprache. Sie erlaubt es insbesondere, interaktive Programme zu schreiben, die in Webseiten eingebettet werden können, sogenannte Applets. Im Rahmen dieses Kompaktkurses soll in die Programmiersprache Java und die für die Programmierung wichtigen Bibliotheken eingeführt werden. Im Rahmen des Kurses sollen die folgenden Themen behandelt werden: Der Kurs ist für Studierende mit Interesse an algorithmischen Problemlösen und objektorientierter Programmierung gedacht. Der Kurs ist nicht als Einführung in die Programmierung geplant, d.h. wir gehen davon aus, daß Dinge wie Schleifen, Datentypen, Rekursion u.ä. im Prinzip bereits bekannt sind und wir setzen ein wenig Erfahrung mit der einen oder anderen Programmiersprache voraus. Vorkenntnisse in Java sind nicht notwendig.

Organisatorisches

Anmeldung:

Wir bitten um schriftliche (per email) Anmeldung für den Kurs. Um die Vorraussetzungen der Teilnehmer abschätzen und den Kurs evtl. darauf abrichten zu können, bitten wir (neben Name und email-Adresse) um die Angabe folgender Daten:

Nachbereitung:

Wir sind an Rückmeldung/Meinungen zum Kurs etc. interessiert und haben deswegen einen Fragebogen vorbereitet. Bitte ausf"ullen und uns zukommen lassen.
Fragebogen

Aufgaben:

Kleinere Aufgaben werden wöchentlich ausgegeben. Später wird es eine etwas anspruchsvollere Programmieraufgabe zu lösen geben. Die Abgabefrist wird jeweils bekanntgegeben. Dabei werden Arbeitsgruppen zu je zwei Teilnehmern gebildet, die zusammen die Aufgaben bearbeiten. Bitte zur Abgabe die entsprechenden Anregungen beachten. Ein sehr einfaches Beispiel eines Makefiles findet sich hier

Abgabe:

Übungsgruppen

Die Aufgaben werden in 2er-Gruppen bearbeitet. Jede der Übungsgruppen bekommt einen account (unix{nummer}) und damit die Möglichkeit, an der Uni zu rechnen. Für den Rechnerzugang ist uns im Grundausbildungspool Rechenzeit zugeteilt geworden, und zwar Montags, 11.00-16:00. Hier die Liste der Übungsgruppen. Der account ergibt sich aus der Gruppennummer durch Addition mit 10, also Gruppe 11 bekommt den account unix21 etc. Denaben sind unix00 und unix01 sind die Betreueraccounts, unix10 ein Beispielbenutzer.

Unterlagen

Wir werden versuchen, Folien für den Kursteil bis zu jeweiligen Vorlesung ins Netz zu legen. Die Vorlesung wird zunächst ähnlich einer vor 2 Jahren gehaltenen Vorlesung vorgehen; wer will kann sich die damaligen Folien etc. auf der alten Kursseite anschauen.

    Schnappschuß der Kursfolien (hier zum Papiersparen 4fach verkleinert) Hier ein erster HTML-Versuch (experimentell, Javacode, Umlaute und einige Macros sind noch nicht konvertiert)

Handouts

1.     Getting started 17. April
2.     Organisatorisches 10. April
3.     Gliederung 10. April

4.     Java-Syntax (nur als Kopie) 10. April

5.     Anweisungen zur Übungsabgabe 20. April: um die Durchsicht der Aufgaben zu erleichtern, legt der Zettel die Form der Abgabe fest.

Aufgaben

1.     Klassen, Vererbung, Datentypen 17. April, hier ein paar nachträgliche Lösungshinweise zu den Pizzaaufgaben
2.     OO II, Ausnahmebehandlung 8. Mai
3.     I/O 15. Mai
4.     Gui/ OO 22. Mai (für die 4stündigen), Zu der Aufgabe mit den Expressions hier wenig Code, den Sie als Augangspunkt benutzen können, und hier der Code für Mengen und hier auch noch die leere Menge, Sets gibt es natürlich auch in der Library, die kann man auch verwenden
5.     OO/Threads 29. Mai (für die 4stündigen)
6.     Netzwerke/OO 19. Juni (für die 4stündigen)
7.     Datenbanken/OO 3. Juli (für die 4stündigen). Hier Code für die booleschen Ausdrücke ohne Negation, dazu das Interface B_ExpressionVisitor.java und zwei seiner Implementierungen BoolEval_V.java (für Aufgabe 3 auf Zettel 6 und Aufgabe 2 auf Zettel 7).

Projektaufgabe: Mist

Die Informationen für die gemeinsame Projektaufgabe wird auf einer eigenen Seite gesammelt.

Obligatorische Links

Literatur

Aus der unübersehbaren Fülle an Büchern über Java, hier eine kleine subjektive Auswahl (siehe auch Handout 1):

weitere Information zu im Kurs verwendeter Software

Links

Ein ungeordnete Sammlung von Links


[Inhalt] [Organisatorisches] [Gruppen] [Unterlagen] [Handouts] [Aufgaben] [Projektaufgabe] [obligatorische Links] [Literatur] [Software] [Links]


Bei Fragen, email an kst@informatik.uni-kiel.de oder ms@informatik.uni-kiel.de


Maintained by: Martin Steffen
Last modified: Fri Jul 21 16:21:36 MET DST 2000