Ich überlege schon lange daran, eins meiner ersten Programme, die ich je in der Sprache Java geschrieben habe, neu und besser (oder zumindest anders) zu implementieren.
Als ich mit diesen Überlegungen begann, wollte ich eigentlich eine neue Programmiersprache lernen. Im Lichte der neuesten Entwicklungen habe ich dies immer wieder verschoben (Es sollte eine Web-Anwendung mit Javascript und so werden).
Jetzt habe ich noch einmal darüber nachgedacht und bin mit mir übereingekommen, dass ich zunächst mal damit anfange, mir Gedanken über die Architektur einer solchen Anwendung zu machen. Danach könnte ich das Spiel nochmal in Java ordentlich implementieren und daran anschließend dann auch andere Programmiersprachen ausprobieren. Vielleicht ließe sich daraus dann auch ein interessanter Programmierkurs entwickeln?
Zunächst einige Festlegungen: Wir legen das Konzept einer Karte fest - Diese hat eine Farbe und eine Wertigkeit. Weitere Eigenschaften einer Karte sind vier visuelle Charakteristika: Die Vorder- und Rückseitenbilder: jeweils vollständig und teilverdeckt.
Ein weiteres Konzept ist das einer Ablage auf dem Tisch, Diese Ablage wird bestimmt durch folgende Eigenschaften: Oberste offene Karte (Sonderfall: Ablage leer) und welche Karte auf diese oberste Karte gelegt werden darf. Weiterhin wird festgelegt, ob eine Karte von dieser Ablage wegbewegt werden darf und falls ja, ob dies nur die oberste Karte sein darf oder eine der anderen offen liegenden oder sogar eine verdeckt liegende.
Wenn wir das gute alte Klondike benutzen, dann lassen sich diese Eigenschaften wie folgt definieren:
Diese eher flüchtig hingeworfene Skizze einer allgemeinen Spielmechanik für Solitäire-ähnliche Games wird nun zunächst in Java implementiert, um herauszufinden, ob man mit diesen lokalen Regeln tatsächlich ein solches Spiel fertigen kann.
Anschließend wird dann versucht, eine andere Sprache zur Umsetzung zu nutzen und weitere Solitäire-Spiele umzusetzen.
Linux Linkdump 2021 II
04.07.2021
Ein weiterer Linkdump rund um Linux (Container, Virtualisierung,...)
WeiterlesenAI und ML Android Basteln C und C++ Chaos Datenbanken Docker dWb+ ESP Wifi Garten Geo Go GUI Hardware Java Jupyter JupyterBinder Komponenten Links Linux Markdown Markup Music Numerik OpenSource PKI-X.509-CA Präsentationen Python QBrowser Rants Raspi Revisited Security Software-Test sQLshell TeleGrafana Verschiedenes Video Virtualisierung Windows Upcoming...
Ich habe wieder einmal im Urlaub grundlegende Architekturänderung in meinem Framework, das auch die Grundlage für die sQLshell und dWb+ darstellt vorgenommen.
WeiterlesenHeute will ich von einem letztlich gescheiterten Experiment erzählen. Um mal ein Zitat aus einem Song zu benutzen: "Ja, auch das muss ab und zu mal sein!"
Weiterlesen
Hardware-Inventarisierung mal anders(?)Ich habe bereits seit einiger Zeit immer mal wieder vor, die in meinen Bastelschränken und auf meinem Schreibtisch vorhandenen Hardwarekomponenten sauber zu inventarisieren. Alle meine bisherigen Versuche schlugen jedoch fehl, da ich mich bisher darauf fokussierte, eine self-hosted Anwendung dafür zu finden. Allerdings sind mir die üblichen Verdächtigen entweder zu schwergewichtig oder zu unflexibel. Ich kam aber auf eine (für mich) neue Idee:
WeiterlesenManche nennen es Blog, manche Web-Seite - ich schreibe hier hin und wieder über meine Erlebnisse, Rückschläge und Erleuchtungen bei meinen Hobbies.
Wer daran teilhaben und eventuell sogar davon profitieren möchte, muss damit leben, daß ich hin und wieder kleine Ausflüge in Bereiche mache, die nichts mit IT, Administration oder Softwareentwicklung zu tun haben.
Ich wünsche allen Lesern viel Spaß und hin und wieder einen kleinen AHA!-Effekt...
PS: Meine öffentlichen Codeberg-Repositories findet man hier.