Skip to content

Blog

My first Lines of Quick Basic

Beim Aufräumen sind mir gerade meine ersten Zeilen Code auf den Mauszeiger gefallen. In der fünften Klasse begann ich mit Quick Basic meine ersten Programmier Erfahrungen zu sammeln. Meine erste Zeile dürfte wohl ein einfaches beep gewesen sein. Danach ließ es mich nicht mehr so schnell los und ich schrieb zahlreiche kleine Programme in Quick Basic. So war mein erstes umfangreicheres Programm eine Lichtorgel, die über den LPT-Port eine Relais-Karte ansteuerte und zahlreiche vorprogrammierte Abläufe wiedergab.

Zum Entwickeln habe ich mir eine kleines LPT LED Modul gebastelt:

LPT LED Modul
LPT LED Modul.
Download:Lichtorgel

Mein zweites Projekt war ein Programm zum Erfassen von Rundenzeiten. Anfangs benutzte ich es für meine Carrera Bahn dann für mein RC-Car. Je nach dem wurde die Zeit per Laserlichtschranke oder per Reed-Relais gemessen. Anfangs wurden die Signale über eine umgebaute Tastatur eingelesen. Später habe ich dann schließlich den COM-Port verwendet. Das Programm wird teilweise noch heute für die Carrera Bahn benutzt und wird deswegen manchmal auch noch weiterentwickelt. Die gemessenen Zeiten werden auf dem Bildschirm ausgegeben und zusätzlich in eine Datei geschrieben. Auch eine Ampel ist integriert. Diese kann ihre Signale auch akustisch und über den LPT-Port ausgeben. Mit der entsprechenden Relais-Karte von der Lichtorgel lässt sich so eine größere Ampel realisieren.

Download:RaceTime
Screenshot der RaceTime GUI
Screenshot der RaceTime GUI.

Abschließend will ich hier noch ein paar andere, kleine Programme aus dieser Zeit festhalten:

Download:First Lines

PW Mindmap: Globalisierung

Hier kann ich euch mal wieder ein Ergebnis aus einer meiner Präsentationen in Politik und Wirtschaft zeigen.

Als Abschluss des Themas Globalisierung war es meine Aufgabe das Erlernte noch einmal zusammen zufassen.

Dazu wählte ich eine Mindmap:

PW Mindmap: Globalisierung
PW Mindmap: Globalisierung.

PW Präsentation: Das Leben in der Leere

In der elften Klasse sollten wir eine Präsentation über die demographische Entwicklung Deutschlands halten. Dieses wurde ich Themenverwandtes Essay ergänzt.

Präsentation: Das Leben in der Leere Essay: Demographischer Wandel in Deutschland

Delphi 2D-Autorennen

Als Abschluss des Informatik Grundkurses der elften Klasse möchte ich hier nun unsere Implementierung eines 2D Autorennspiels in Delphi vorstellen. Anfangs bestand die Aufgabenstellung darin ein ein-dimensionales Rennspiel zu entwickeln, bei dem der Spieler mit den schnelleren Fingern gewinnt. Also quasi ein einfaches Geschicklichkeitsspiel. Anfangs sind wir daher nur auf einer Linie gefahren. Aber wer hätte es gedacht? Nach einer Zeit wurde das ziemlich langweilig. Und da wir noch genügend Zeit hatten, strukturierten wir unseren Code grundlegend neu und fügten die Simulation von Beschleunigung und Verzögerung hinzu.

Screenshot des 2D Autorennens
Screenshot des 2D Autorennens.

Trotzdem sind wir noch nicht über die erste Dimension hinaus gekommen. Nachdem nach der vierte Doppelstunde immer noch nicht alle fertig waren und wir schon dabei waren Extras und Cheats einzubauen, habe ich mich dann entschlossen in die zweite Dimension zu gehen. Die kleine Physik-Engine behielten wir bei und fügten die Möglichkeit hinzu die Autos zu lenken. Aber nun hatten wir ein Problem: wie wird die nun zwei-dimensionale Strecke begrenzt? ine Strecke mit Canvas Objekten zu zeichnen war uns zu aufwendig und auch nicht gerade sehr schön. Wir bedienten uns daher einer Technik die auch als “Colorcoding” bekannt ist: verschiedene Farben in einer Bitmap markieren, fahrbare Bereich und Barrieren. Einen Rundenzähler und eine Konfigurationsdatei rundeten schließlich das Projekt ab.

Color Coding der Fahrbahn
Color Coding der Fahrbahn.

Wir legten diesmal viel Wert auf die objektorientierte Entwicklung des Codes, da dies das aktuelle Unterrichtsthema ist.

Ein Frontend für die Einstellungen sparten wir uns, um uns mehr auf die “Physik” konzentrieren zu können. Die Einbindung eines INI-Files lernte ich nebenbei auch noch. Das Autorenn Program ist also als Gegenstück zum Potenzübungs Program zu sehen. Hierbei legten wir mehr Wert auf ein schönes GUI mit Hilfe und Installer.

Ihr könnt den Quellcode gerne für eure Projekte weiterverwenden. Ich bitte jedoch um einen kurzen Kommentar und einen Hinweis im GUI, Danke

Download:2D Delphi-Autorennen

Des Weiteren ist das Projekt auch auf Codeberg zu finden: /stv0g/2d_autos .

Delphi Potenzübungsprogramm

Im Rahmen unseres Informatikunterrichts in der zehnten Klasse wurde unsere Leistung durch eine Projektarbeit bewertet. In kleinen Gruppen arbeiteten wir an jeweils unterschiedlichen Projekten.

Das Potenz Übungsprogramm war unser erstes kleines Delphi-Projekt. Wir steckten unsere ganze Motivation hinein und fügten sogar eine Hilfe mit Bildern und einen Installer hinzu. Wir teilten unsere Gruppe in Programmierung, Packaging und Dokumentation auf 😉. Jeder hatte ja seine eigenen Vorlieben und Fachgebiete.

Das Hauptprogramm
Das Hauptprogramm.

Die Aufgabenstellung bestand darin ein kleines Potenzübungsprogramm zu entwickeln, welches beim Lernen der Potenzregeln helfen sollte. Wir fügten eine Fehlerkorrektur, einen Webkampfmodus mit Onlineranking hinzu (ist leider nicht mehr online). Wir legten viel Wert auf eine intuitive und schnelle Bedienung. Das Programm ist komplett über die Tastatur bedienbar. Der User bekommt eine akustische Rückmeldung seines Ergebnisses und abschließend eine statistische Auswertung seiner Übung.

Hier wurde nichts vergessen
Hier wurde nichts vergessen.

Mit dem Projekt lernten wir alle Möglichkeiten von Delphi kennen. Und natürlich mussten wir fast alle Features und Gimicks (App-Icon, Hilfe, etc) einmal ausprobieren. Also unser Programm ist eine “Eierlegende Wollmilchsau” und daher wohl auch eher eine Art Machbarkeitsstudie, um unseren lieben Informatiklehrer zu beindrucken 😉.

Ihr könnt den Quellcode gerne für eure Projekte weiterverwenden. Bitte beachtet jedoch die GPL.

Download:Delphi Potenzübungsprogramm (`.msi` Installer mit Quellcode)

Alternativ gibt es den Quellcode auf Codeberg: /stv0g/potenz .

/_astro/potenz-about.lpwiOXmJ.png /_astro/potenz-help-contents.C2LdTVMw.png /_astro/potenz-help.DEbawPon.png /_astro/potenz-icon.CTtqCCI6.png /_astro/potenz.HKtLroAG.png