[Technical Faculty]

Java-Kurs


Sommersemester 1998

Ort: 324, Haus II

Zeit: Mittwoch, 14 ct

Beginn: Mittwoch, 8. März


[Inhalt] [Organisatorisches] [Gruppen] [Unterlagen] [Handouts] [Aufgaben] [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:

...

Aufgaben:

Kleinere Aufgaben des Java-Teils werden wöchentlich ausgegeben. Am Ende des Java-Teils 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.

Abgabe:

Die Abgabe der Aufgaben erfolgt per Mail an ms@informatik.uni-kiel.de, und zwar Bitte keine Mails für einzelne Aufgaben oder gar für einzelne Java-Files. Die Mail an mich soll im Subject folgende drei Informationen enthalten: Beispielsweise so:
Subject: Abgabe: Gruppe 17, Blatt 3
Die Abgabe soll als Tape-Archiv (tar-file) erfolgen. Jeder Aufgabe soll ein eigenes Verzeichnis haben (das haben die meisten auch so gemacht) und die Struktur der Lösung von soll beispielsweise so aussehen: ./uebung2/aufgabe1/File1.java ./uebung2/aufgabe1/erklaerung.txt ./uebung2/aufgabe2/Main.java Wer also unter Unix/Linux arbeitet und eine Aufgabe fertig hat, mache folgendes: cd (verzeichnis_worunter_die_Uebung_liegt) tar cvf uebung2.tar uebung2 Das tar-File ist das, was ich haben will. (Wie man Archive unter Windows/OS2/MacOS erstellt, weiß ich nicht, jar (java-Archiv) ist vielleicht auch dort verfügbar)

Übungsgruppen

Jede der Übungsgruppen bekommt einen account (swtechxx) und damit die Möglichkeit, an der Uni zu rechnen. Für den Rechnerzugang haben wir den Rechnerraum um 2ten Stock in der Zeit nach der Vorlesung reserviert. Hier die Liste der Übungsgruppen

Unterlagen

    Schnappschuß der Kursfolien (hier zum Papiersparen 4fachverkleinert) in Wachsen und ständig unvollständig. Leider nicht in HTML, der Konverter packt's nicht

Handouts

1.     Getting started 8. April
2.     Organisatorisches 8. April
3.     Gliederung 8. April

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

5.     Anweisungen zur Übungsabgabe 24. April: Wir sind von der Viellfalt und Phantasie der Darreichunsformen der Lösungen derartig überrascht, daß uns nichts anders übrigbleibt, als von Zettel 3 an die Abgabe für alle verbindlich festzulegen.

6.     Rückmeldung 20. Mai: Was war verbesserungswürdig an der Vorlesung, was sollte man ändern etc

Aufgaben

1.     Erste Schritte 22. April
2.     Klassen, Vererbung, Datentypen 22. April (die letzte Aufgabe mit den Exceptions muß noch nicht gemacht werden) (Lösungshinweise)
3.     Ausnahmen, weiter mit OO 29. April (Die I/O-Aufgabe auf dem ausgeteilten Zettel kommt erst nächstes Mal)
4.     I/O, Graphik, OO: Interfaces 6. Mai
5.     Events, Threads, OO: Polymorphie, Type casts, Überschreiben 13. Mai. Zu der Aufgabe mit den Expressions hier wenig Kode, den Sie als Augangspunkt benutzen können, und hier der Code für Mengen und hier auch noch die leere Menge
6.     Networking; OO: Erweitern von Interfaces 20. Mai. Hier der Kode für die booleschen Ausdrücke ohne Negation, dazu das Interface B_ExpressionVisitor.java und zwei seiner Implementierungen BoolEval_V.java (für Aufgabe 2) und Pretty_Print_V.java für Aufgabe 3.

Literatur

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

Information zu im Kurs verwendeter Software

Links

Ein ungeordnete Sammlung von Links


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


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


Maintained by: Martin Steffen
Last modified: März 1998