Allgemeine Informationen
In diesem Buch, das im Teubner-Verlag erschienen ist,
wird das objektorientierte Java-Hamster-Modell ausführlich erläutert.
- In der Leseprobe kannst du mal in das Buch
hineinschnuppern.
- Außerdem bietet Amazon eine Volltextsuche für das Buch an: Search Inside
Autoren:
Dr.-Ing. Dietrich Boles
, Universität Oldenburg
Dr. Cornelia Boles, BTC Oldenburg
Bibliographische Angaben:
Erscheinungsjahr: 2004
Seitenanzahl: 536
Preis: 34,90 EUR
ISBN: 3-519-00506-9
Werbetext:
Programmieranfänger haben häufig Schwierigkeiten damit, dass sie beim Programmieren ihre normale Gedankenwelt verlassen und in eher technisch-orientierten Kategorien denken müssen, die ihnen von den Programmiersprachen vorgegeben werden. Gerade am Anfang strömen oft so viele inhaltliche und methodische Neuigkeiten auf sie ein, dass sie das Wesentliche der Programmierung, nämlich das Lösen von Problemen, aus den Augen verlieren.
Das Hamster-Modell ist mit dem Ziel entwickelt worden, dieses Problem zu lösen. Mit dem Hamster-Modell wird Programmieranfängern ein einfaches, aber mächtiges Modell zur Verfügung gestellt, mit dessen Hilfe Grundkonzepte der imperativen und objektorientierten Programmierung auf spielerische Art und Weise erlernt werden können. Programmierer steuern virtuelle Hamster durch eine virtuelle Landschaft und lassen sie bestimmte Aufgaben lösen. Die Anzahl der gleichzeitig zu berücksichtigenden Konzepte wird im Hamster-Modell stark eingeschränkt und nach und nach erweitert.
Prinzipiell ist das Hamster-Modell programmiersprachenunabhängig. Zum praktischen Umgang mit dem Modell wurde jedoch bewusst die Programmiersprache Java als Grundlage gewählt. Java - auch als "Sprache des Internet" bezeichnet - ist eine moderne Programmiersprache, die sich in den letzten Jahren sowohl im Ausbildungsbereich als auch im industriellen Umfeld durchgesetzt hat.
In dem ersten Buch "Programmieren spielend gelernt mit dem Java-Hamster-Modell" werden allgemeine Grundlagen der Programmierung erläutert sowie Konzepte der imperativen Programmierung (Anweisungen, Schleifen, Prozeduren, Typen, Variablen, Parameter, Rekursion, ...) eingeführt. Darauf aufbauend behandelt das zweite Buch "Objektorientierte Programmierung spielend gelernt mit dem Java-Hamster-Modell" alle wichtigen Konzepte der objektorientierten Programmierung (Objekte, Klassen, Vererbung, Polymorphie, Interfaces, Exceptions, Zugriffsrechte, Pakete, ...).
Beide Bücher sind insbesondere für Schüler und Studierende ohne Programmiererfahrung empfehlenswert. Für Programmierer mit Grundkenntnissen der imperativen Programmierung werden im zweiten Buch die Inhalte des ersten Buches kurz zusammengefasst. Die Bücher sind als Grundlage für Programmierkurse sowie zum Selbststudium geeignet. Dazu enthalten sie viele Beispielprogramme und Übungsaufgaben.
Ergänzende Materialien werden im Internet unter www.java-hamster-modell.de bereitgestellt. Insbesondere steht dort der Hamster-Simulator zur Verfügung; ein Programm, mit dem Hamster-Programme erstellt und ausgeführt werden können.
Inhaltverzeichnis
Vorwort
1. Einleitung
2. Das imperative Hamster-Modell
3. Hamsterobjekte
4. Die Klasse Hamster
5. Erweiterte Hamsterklassen (Grundlagen)
6. Erweiterte Hamsterklassen (Fortsetzung)
7. Vererbung
8. Arrays
9. Verallgemeinerung des Klassen/Objekte-Konzeptes
10. Ein- und Ausgabe
11. Polymorphie und dynamisches Binden von Methoden
12. Abstrakte Klassen und Interfaces
13. Fehlerbehandlung mit Exceptions
14. Zugriffsrechte und Pakete
15. Spielende Hamster
16. Ausblick
Anhang
Literatur
Index
Aus der Einleitung:
Nach einem einleitenden Kapitel enthält Kapitel 2 dieses Buches
eine Wiederholung bzw. Zusammenfassung des ersten Bandes des Java-Hamster-Buches
"Programmieren spielend gelernt mit dem Java-Hamster-Modell",
im Folgenden auch als imperatives Hamster-Modell bezeichnet.
Um auch für die Vermittlung objektorientierter Programmierkonzepte geeignet zu sein,
wurde das ursprüngliche Hamster-Modell geringfügig geändert und erweitert.
Entstanden ist das so genannte objektorientierte Hamster-Modell,
dessen Unterschiede zum imperativen Hamster-Modell im ersten Teil von Kapitel 3 erläutert werden.
Wie die Bezeichnung "objektorientierte Programmierung" schon ausdrückt, stellen
Objekte die Grundlage dieses Programmierparadigmas dar.
Im zweiten Teil von Kapitel 3 lernen Sie Hamster(-Objekte) als ersten Typ von derartigen Objekten
kennen.
Gegenüber dem imperativen Hamster-Modell gibt es im
objektorientierten Hamster-Modell nicht nur einen, sondern mehrere Hamster. Diese
werden aus einer vordefinierten Klasse Hamster erzeugt, die quasi einen
Bauplan für Hamster darstellt. Kapitel 4 stellt die Klasse Hamster vor.
Die Klasse Hamster definiert unter anderem den Befehlsvorrat von Hamstern.
Diesen können Sie durch die Definition erweiterter Hamsterklassen vergrößern.
Während in Kapitel 5 die wichtigsten Grundlagen dieses Mechanismus der Definition erweiterter Hamster-Klassen
beschrieben werden, enthält Kapitel 6 weitergehende Konzepte der Klassendefinition.
Letztendlich wird in den Kapiteln 5 und 6 ein wichtiges Konzept der
objektorientierten Programmierung eingesetzt, nämlich die Vererbung. Hierbei können Klassen
Eigenschaften, bspw. Befehle, an andere Klassen vererben. Das Vererbungskonzept wird
im Detail in Kapitel 7 vorgestellt.
Arrays ermöglichen die Zusammenfassung mehrerer Variablen zu einer Einheit.
Sie sind eigentlich ein Konzept der imperativen Programmierung. In Java basieren Arrays
jedoch auf objektorientierten Konzepten und werden daher erst in diesem zweiten Band
des Java-Hamster-Buches eingeführt, nämlich in Kapitel 8.
Das Klassen/Objekte-Konzepte ist natürlich nicht nur dazu geeignet, Hamster als
Objekte der Klasse Hamster zu repräsentieren. Dieses grundlegende Konzept der
objektorientierten Programmierung wird daher in Kapitel 9 verallgemeinert.
In Kapitel 10 wird den Hamstern das Schreiben und Lesen beigebracht.
Hamster können über neue Befehle Informationen auf den Bildschirm ausgeben und Informationen, die Sie
als Benutzer über die Tastatur eingeben, entgegen nehmen.
Die Hamster lernen dadurch, mit Ihnen als Benutzer eines Programmes zu kommunizieren.
Das Konzept der objektorientierten Programmierung, das die Vorteile der einfachen
Wiederverwendbarkeit und Erweiterbarkeit von Programmen bedingt, ist das Konzept der Polymorphie
im Zusammenspiel mit dem dynamischen Binden von Methoden. Was es damit genau auf sich hat,
erfahren Sie in Kapitel 11.
Eng mit diesem beiden Konzepten verbunden sind so genannte abstrakte Klassen und Interfaces,
die in Kapitel 12 vorgestellt werden.
Java integriert mit dem Exception-Konzept eine ausgezeichnete Möglichkeit der programminternen
Behandlung von Laufzeitfehlern. Exceptions sind dabei Objekte spezieller Fehlerklassen.
Die Fehlerbehandlung mit Exceptions ist Thema von Kapitel 13.
Zu guter Letzt werden in Kapitel 14 das Paket-Konzept sowie
Zugriffsrechte behandelt.
Mit Hilfe des Paket-Konzeptes lassen sich mehrere Klassen zu so genannten Paketen "verschnüren"
und anderen Programmierern zur Verfügung stellen. "Uber Zugriffsrechte kann dabei spezifiziert
werden, was ein anderer Programmierer mit den Klassen machen darf und was nicht.
In Kapitel 15 werden alle eingeführten objektorientierten Sprachkonzepte noch einmal
an einem größeren Beispiel demonstriert.
Sie werden in diesem Kapitel zusätzlich lernen, wie man Hamstern das Spielen von
Zwei-Spieler-Strategiespielen, wie Schach, Reversi oder 4-Gewinnt, beibringen kann bzw. allgemein,
wie man Programme schreibt, die derartige Spiele spielen können.
Im letzten Kapitel - Kapitel 16 - werden die Unterschiede zwischen der Hamster-Sprache und
der "richtigen" Programmiersprache Java aufgezeigt. Sie lernen die Java-Klassenbibliothek
kennen, eine Sammlung vieler nützlicher Klassen, die Java-Programmierern kostenlos zur Verfügung
steht. Weiterhin gibt Kapitel 16 einen Einblick
in die Welt der objektorientierten Softwareentwicklung, von der die
objektorientierte Programmierung letztendlich nur ein kleiner Teil ist.
Am Ende des Buches befinden sich
ein Anhang mit einer vollständigen Beschreibung aller vordefinierter Klassen des Java-Hamster-Modells,
ein Literaturverzeichnis sowie ein Index.
Online-Bestellung bei Amazon:
Materialien
- alle Beispielprogramme des Buches:
bsp-band2.zip (ca. 500 KBytes)
Ergänzungen
Sicher hat es Sie bisher auch schon oft geärgert, dass der Standard-Hamster immer vom
Typ Hamster und nicht vom Typ einer erweiterten Hamster-Klasse ist und man für ihn
keine neu definierten Befehle aufrufen kann.
Wir haben uns daher in Band 2 des Java-Hamster-Buches immer mit einem Vertretungshamster begnügt.
Im folgenden Artikel wird demonstriert, wie Sie dem
Standard-Hamster durch Anwendung des Singleton-Musters (siehe Band 2, Abschnitt 14.4.2.1) andere Typen verpassen können.