Java-Hamster-Modell

Java-Hamster-Modell
Screenshot des Java-Hamster-Simulators

Das Java-Hamster-Modell gehört zu den Minisprachen. Ziel des Modells ist es, Programmieranfängern das Erlernen grundlegender Programmierkonzepte durch den Einsatz spielerischer Mittel zu erleichtern.

Das Modell orientiert sich an der Programmiersprache Java, ist aber grundsätzlich sprachunabhängig. Mit einem minimalen Satz an Befehlen sollen Hamster-Programme geschrieben werden, die einen virtuellen Hamster durch eine Landschaft steuern und ihn Aufgaben lösen lassen. Grundlage des Modells ist der schrittweise Ablauf, der Programmierkonzepte aufeinander aufbauend einführt und diese durch zahlreiche Beispiele demonstriert.

Eine spezielle Entwicklungsumgebung, der so genannte Hamster-Simulator, hilft bei der Entwicklung und visualisiert den Ablauf der selbstgeschriebenen Hamster-Programme. Er wurde bewusst an bekannte Entwicklungsumgebungen für Java angelehnt und steht kostenlos zur Verfügung.

Inhaltsverzeichnis

Imperative Programmierung

Im ersten Teil des Modells werden alle wesentlichen Konzepte der imperativen Programmierung schrittweise motiviert und eingeführt, insbesondere Anweisungen, Kontrollstrukturen, Prozeduren, Funktionen, Typen, Variablen, Ausdrücke, Parameter, Rekursion und der Programmentwurf.

Mit einigen Grundbefehlen wie linksUm() und nimm() und Abfragen wie vornFrei() und maulLeer() steuert man den Hamster in einer vorgegebenen Landschaft. Der Anwender lernt, aus diesen Grundelementen Prozeduren zusammenzustellen, die komplexere Befehle erlauben.

Objektorientierte Programmierung

Um das Konzept der objektorientierten Programmierung zu erklären haben die Hamster die Fähigkeit sich fortzupflanzen und ihre Fähigkeiten und ihr Wissen an die Nachkommen zu vererben.

Zum Schluss lernen die Anwender, wie sie den Hamstern das Schach- oder Reversispielen beibringen können. So soll gezeigt werden, wie die zuvor vorgestellten Konzepte auf komplexe Probleme angewandt werden können.

Parallele Programmierung

Während die Hamster in der objektorientierten Programmierung explizit durch den Programmierer gesteuert werden, bilden sie in der parallelen Programmierung selbstständige Einheiten, die bei der Lösung von gestellten Aufgaben kooperieren und sich dabei koordinieren und synchronisieren müssen. Die Klasse Hamster, von der Hamster erzeugt werden, ist von der Klasse Thread abgeleitet, so dass bei der parallelen Programmierung mit dem Java-Hamster-Modell alle Eigenschaften und Funktionen der Thread-Programmierung genutzt werden können.

Literatur

  • Dietrich Boles: Programmieren spielend gelernt mit dem Java-Hamster-Modell. Vieweg+Teubner, 2008, ISBN 978-3-8351-0194-4
  • Dietrich Boles, Cornelia Boles: Objektorientierte Programmierung spielend gelernt mit dem Java-Hamster-Modell., Vieweg+Teubner, 2010, ISBN 978-3-8348-0802-8
  • Dietrich Boles: Parallele Programmierung spielend gelernt mit dem Java-Hamster-Modell - Programmierung mit Java-Threads. Vieweg+Teubner, 2008, ISBN 978-3-8351-0229-3

Siehe auch

Weblinks


Wikimedia Foundation.

Игры ⚽ Нужно сделать НИР?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Niki - der Roboter — Mit Niki – der Roboter (oft auch Niki oder NIKI) wird eine Gruppe von Programmen bezeichnet, die auf der von Richard E. Pattis entwickelten Idee von „Karel, the robot“[1] basieren. Es handelt sich um bewusst rudimentär gehaltene… …   Deutsch Wikipedia

  • Niki der Roboter — Mit Niki – der Roboter (oft auch Niki oder NIKI) wird eine Gruppe von Programmen bezeichnet, die auf der von Richard E. Pattis entwickelten Idee von „Karel, the robot“[1] basieren. Es handelt sich um bewusst rudimentär gehaltene… …   Deutsch Wikipedia

  • Niki – der Roboter — Mit Niki – der Roboter (oft auch Niki oder NIKI) wird eine Gruppe von Programmen bezeichnet, die auf der von Richard E. Pattis entwickelten Idee von „Karel, the robot“[1] basieren. Es handelt sich um bewusst rudimentär gehaltene… …   Deutsch Wikipedia

  • Kara (Programmierumgebung) — KaraToJava Kara, ein Marienkäfer in einer 2D Welt …   Deutsch Wikipedia

  • Thread (Informatik) — Ein Thread (auch: Aktivitätsträger oder leichtgewichtiger Prozess) bezeichnet in der Informatik einen Ausführungsstrang oder eine Ausführungsreihenfolge in der Abarbeitung eines Programms. Ein Thread ist Teil eines Prozesses. Man unterscheidet… …   Deutsch Wikipedia

  • Minisprache — Minisprachen sind spezielle Programmiersprachen bzw. bestimmte Teilmengen von Programmiersprachen, die dazu dienen, Programmieranfängern einen vereinfachten Einstieg in die komplexe Welt der Programmierung zu ermöglichen. Mit den Sprachen einher… …   Deutsch Wikipedia

  • Liste der Dateiendungen/H — In dieser Liste sind übliche Dateinamenserweiterungen aufgelistet, die in einigen Betriebssystemen (wie zum Beispiel Microsoft Windows) zur Unterscheidung von Dateiformaten verwendet werden. In anderen Betriebssystemen erfolgt die… …   Deutsch Wikipedia

  • KaraToJava — Kara, ein Marienkäfer in einer 2D Welt …   Deutsch Wikipedia

  • Nichtsequentielle Programmierung — Dieser Artikel oder Abschnitt bedarf einer Überarbeitung. Näheres ist auf der Diskussionsseite angegeben. Hilf mit, ihn zu verbessern, und entferne anschließend diese Markierung. Parallele Programmierung ist ein Programmierparadigma. Damit ist… …   Deutsch Wikipedia

  • Nichtsequenzielle Programmierung — Dieser Artikel oder Abschnitt bedarf einer Überarbeitung. Näheres ist auf der Diskussionsseite angegeben. Hilf mit, ihn zu verbessern, und entferne anschließend diese Markierung. Parallele Programmierung ist ein Programmierparadigma. Damit ist… …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”