Inhaltsverzeichnis Inhaltsverzeichnis Hypertext-Version Informelle Einführung (c) APSIS GmbH

Vorwort

Java ist eine Programmiersprache für Experten – meinen viele, und fangen den Programmierunterricht in Pascal oder Basic an.

Weit gefehlt. Die saubere Objektorientierung von Java ermöglicht das Erlernen des Programmierens auf einer sehr hohen, abstrakten Ebene, wenn es auch an ausgereiften didaktischen Konzepten noch mangelt. Während es zahlreiche Lehrbücher für Anfänger im Programmieren gibt, orientieren sie sich weitgehend an älteren Sprachen. Hier werden typischerweise zuerst die "niedrigen" Sprachelemente erarbeitet: Bits, Bytes, Ganzzahlen, Verzweigungen, Schleifen. Wenn der Student durchhält, kommt er erst später zu den "höheren" Konzepten wie Module, Klassen, Ausnahmen, usw. Die objektorientierten Erweiterungen wie etwa Object Pascal, oder C++ werden traditionell erst zusätzlich angeboten, nachdem Fähigkeiten zu Algorithmisierung vorhanden sind. Auch die objektorientierte Sprache Java wird meistens mit konventionellen Methoden unterrichtet.

Hierdurch entsteht oft ein Paradigma (eine Denkweise), das den Anforderungen moderner Informatik nicht gewachsen ist: Die Programmierung im Kleinen verliert nämlich zunehmend ihre Bedeutung gegenüber der Programmierung im Großen; selber zu programmieren wird weniger wichtig als vorhandene Bausteine zusammenfügen zu können. Java als moderne Programmiersprache wurde ganz und gar auf der Basis dieser Erkenntnis entwickelt.

Das Lehrbuch (und das vertrenene didaktische Konzept) objektorientiert zu entwickeln, war das ehrgeizige Ziel der Autoren. Dadurch wird nicht nur die Programmiersprache, sondern auch die Denkweise der Programmierer objektorientiert.

In Java kann man ohne intensive Kenntnisse der Bibliotheken kaum sinnvolle Programme schreiben. Selbst der Anfänger ist angehalten, von Standardklassen zu erben, Polymorphie zu verwenden, und Ausnahmen aufzufangen, ohne dabei wirklich zu verstehen, was sich hinter diesen Mechanismen verbirgt. Der Grund ist, dass die Java-Bibliotheken nicht für didaktische Zwecke, sondern für fortgeschrittene Softwareentwicklung entworfen wurden. Viele Java-Programmierer gehen daher den pragmatischen Weg, kopieren Vorgehensweisen und basteln Musterprogramme für eigene Zwecke um, verwenden notfalls "type casting", ohne die Konzepte sauber zu verstehen.

Diese sind nämlich nicht für Programmierneulinge konzipiert; sie zu ergründen ist keine einfache Aufgabe. Es liegt an der Hand, für Anfänger andere, didaktisch aufbereitete Bibliotheken zu entwickeln, die den Studenten Schritt für Schritt in die objektorientierte Denkweise hineinführen. Genau dieser Bedarf wird durch dieses Lehrbuch befriedigt: Das mit entwickelte Paket lehrbuch (erreichbar über das Internet oder bestellbar als Diskette) erfüllt diese Anforderung. Es enthält Klassen, die schon in den ersten Programmbeispielen einfach zu aktivieren sind, und auch ein Erfolgserlebnis in Form von Multimedia anbieten: Die Welt wird mit einer bunten Animation begrüßt, Audiodateien können angehört werden, usw. Sie werden auch im weiteren Verlauf verwendet, um in die Konzepte der objektorientierten Programmierung stufenweise einzuführen.

Die Entwicklungstrends im Software Engineering stimmen dieser Vorgehensweise zu. In Informatikstudiengängen von Hochschulen, an denen das Fach Softwaretechnologie einen Schwerpunkt bildet (so auch an der Technischen Fachhochschule Berlin), wird Java neuerdings als erste Unterrichtssprache eingesetzt. Ihre Strenge zwingt die Studenten zum disziplinierten Programmieren. Sie werden von Anfang an daran gewöhnt, ihrer Fantasie und Kreativität nicht zu viel Raum zu lassen, wie das in anderen Sprachen möglich ist. In höheren Semestern durchgeführte Softwareentwicklungsprojekte zeigen die positiven Auswirkungen dieser Strategie.

Im Buch wird nicht nur die Sprache Java vorgestellt, vielmehr eine – nach Meinung der Autoren vernünftige – Art von Programmierstil und -denken sowie der Weg, wie dies in Java zum Ausdruck gebracht werden kann. So können den Studenten schon zu Anfang Konzepte selbstverständlich werden, die sich andere erst als Fortgeschrittene oder gar nicht aneignen. Die Sprachelemente, die traditionell am Anfang des Unterrichts eingeführt werden, werden erst in den hinteren Kapiteln behandelt.

Abgesehen von eventuell auftretenden Installationsproblemen des Compilers und der Bibliothek ist das Buch auch fürs Selbststudium geeignet. Kenntnisse in Java oder in anderen Programmiersprachen stellen zwar Hindernisse dar, sie können aber durch Disziplin überwunden werden.

Danksagungen

Für die Hilfe, die wir während des Verfassens dieses Lehrbuchs erhalten haben, sind wir unseren Kolleg(inn)en aus dem Fachbereich Informatik der Technischen Fachhochschule Berlin dankbar, die durch ihre zahlreichen Bemerkungen zur inhaltlichen Qualität beigetragen haben. Diplomanden haben einen Teil der Programmierarbeit übernommen, indem sie Beispielprogramme und eine plattformunabhängige Oberfläche für die verschiedenen (plattformabhängigen) Versionen des Lehrbuchs angefertigt haben. Die Studenten des neu eingerichteten Studiengangs Medieninformatik haben die damals noch unreifen Konzepte durchlitten, konstruktiv kritisiert und damit verbessert.

Besondere Anerkennung gebührt unseren Familien (Ehepartnern und jeweils vier Kindern), die die Belastung durch das schnelle Entstehen des Manuskripts ertragen und mitgetragen haben. Unser gemeinsamer Glaube an Jesus Christus gab uns allen die Basis dazu.

Die Autoren

Die Lehrbuchbibliothek

Zu diesem Buch gehört eine Programmbibliothek. Sie enthält die Java-Klassen, die für die Übersetzung der Beispielprogramme und der Übungsaufgaben notwendig sind. Sie kann auf einer Diskette in 31/2"-Format über folgende Adresse bestellt werden:

APSIS GmbH, D-82398 Polling

Der Preis von DM / sFr / US$ 10,- bzw. ÖSch 100,- soll als Geldschein oder als Scheck eines deutschen Bankinstituts beigelegt werden. Alternativ reicht eine Bankgutschrift von DM 10,- mit Verwendungszweck "Java-Diskette" und Postadresse an das Konto:

APSIS GmbH, Kto-Nr. 6650177604 bei der Hypobank Weilheim (BLZ 70320305)

Einfacher ist es aber, den Inhalt der Diskette kostenlos über das Internet an der folgenden Adresse abzuholen:

http://www.tfh-berlin.de/~ oo-plug/Java

Hier befindet sich eine HTML-Version des Lehrstoffs. Sie beinhaltet eine Reihe der im Text aufgeführten (ausführbaren) Beispielprogramme, Musterlösungen für Übungsaufgaben, Hilfsprogramme und Spezifikationsdateien sowie Ergänzungen und Verweise auf den Text in diesem Buch. Ein CD-ROM mit diesem Material kann für DM / sFr / US$ 30,- bzw. ÖSch 300,- nach dem oben beschriebenen Verfahren ("Java-CD") bestellt werden. Die Autoren sind für Anregungen, Ergänzungen, Hinweise und Fehlerkorrekturen über die elektronische Postadresse (e-mail)

solymosi@tfh-berlin.de

dankbar. Hier können auch Fragen zum Lehrbuch gestellt werden.


Inhaltsverzeichnis Inhaltsverzeichnis Hypertext-Version Informelle Einführung (c) APSIS GmbH