Bibliotheken & SVN/GIT
In dieser Lehrveranstaltung werden folgenden Themen behandelt:
- Bibliotheken
- Dienstprogramm ar
- Propietäre Software vs. Open-Source Software
- Dynamische Bibliotheken (DLLs)
- Source Code und insbesondere Bibliotheken (Middleware) wird normalerweise in sog. Repositories auf einem SCM-Server gehostet → Backup, Versionierung, Multiple Copies, Teamwork, Bug Tracking, Regression Testing usw.
- Bekannteste SCM Tools: SVN und GIT.
- ASCII-Gfx: Erweiterte Terminalgrafik auf Sourceforge
- Boulder-Dash:
- Das Originalspiel kann man auf dem C64-Emulator ausprobieren.
- Es gibt auĂźerdem ein OSS-Remake namens GDASH.
- ASCII-Dash: Spiel mit erweiterter Terminalgrafik auf Sourceforge
- Boulder-Dash Spielelogik: Das Ziel des Spiels Boulder-Dash ist es, Diamanten einzusammeln. Der Spielcharakter Rockford kann dazu Gänge in den „Dirt“ des Spielfelds graben, muss aber aufpassen, dass ihm keine Steine auf den Kopf fallen. Im Spiel kommen außerdem die sog. „Fireflies“ und „Butterflies“ vor. Das sind die Gegner von Rockford. Die Gegner-Monster können sich in den Gängen des Spiels bewegen und explodieren, wenn sie Rockford oder die sogenannte „Amoeba“ berühren oder wenn Steine auf sie fallen.
- Boulder-Dash Implementierung: Das Spiel verwendet die C-API NCurses. Zusätzlich verwendet es auch die C++-API ASCII-Gfx, welche zusätzliche Funktionen wie Grid-Text, Sound, Sprites und eine Scroll-Area zur Verfügung stellt. Das Scrollen des Spielfelds und das Ausführen der Programmlogik wird mit dem sogenannten Game-Loop realisiert, der den Zustand des Spielfeldes von Zyklus zu Zyklus anpasst und nach jedem Zyklus gescrollt darstellt.
- Anhand von ASCII-Dash werden folgende Fragestellungen exemplarisch behandelt:
- Wie behandle ich Bibliotheken mit CMake?
- Wie ist das Spiel modularisiert?
- Welche weiteren Programmiertechniken kommen vor?