Was ist ein Singleton?

Da wir letztens bei statischen Variablen waren habe ich mir gedacht ich setze noch einen drauf und erkläre das nächste Thema der theoretischen und praktischen Informatik 🙂

Was ist ein Singleton?
Eigentlich ist das ganze einfach zu erklären. Wir haben wiedermal eine Klasse, z.B. CBundeskanzlerin. Da es ja bekanntlich nur eine Bundeskanzlerin gibt müssen wir vermeiden, dass mehrere Instanzen dieser Klasse erzeugt werden. Und was hilft uns dabei? Richtig, das Singleton!
In der praktischen Programmierung ist das Singleton meistens eine Basisklasse von der genau die Klassen erben, von denen später nur eine Instanz existieren soll. Heißt in unserem Beispiel: Die Klasse CBundeskanzlerin erbt von der Klasse CSingleton.

Continue reading “Was ist ein Singleton?”

Was sind statische Variablen?

Die Frage hatten wir im Studium schon oft und keiner konnte sie wirklich beantworten. Da ich sie heute 3 Leuten erklärt habe und alle mit einem “Ahhhh!” reagiert haben, dachte ich, ich schreib schnell einen kurzen Artikel drüber 😉

Variablen, die mit der Notation static versehen sind existieren für jede Klasse nur exakt einmal. Wenn wir jetzt beispielsweise in C++ eine Klasse CPerson haben und darin eine Variable mit static int nAlter; deklarieren haben wir dadurch die Möglichkeit das Alter aller Instanzen unserer Klasse durch eine einzelne Zuweisung zu ändern!

Continue reading “Was sind statische Variablen?”

WiiMote via Standard-Bluetoothtreiber mit PC verbinden

Im Internet steht oft geschrieben, dass man für das Verbinden des Wii-Controllers die Blue-Soleil-Treiber erwerben muss. Hier will ich mal diesen Irrglauben beseitigen indem ich in ein paar Schritten erkläre, wie man seine WiiMote auch mit den Standard-Treibern mit Windows verbinden kann ohne ca 20€ für neue Software ausgeben zu müssen. Nich lang schnacken, los geht’s: Rechtsklick auf das Bluetooth-Tray-Icon unten rechts neben der Uhr und dort “Bluetooth-Gerät hinzufügen” auswählen.

Continue reading “WiiMote via Standard-Bluetoothtreiber mit PC verbinden”

[Gamestudio] Spracherkennung über die Windows Speech API

Gamestudio Speech DLL
Gamestudio Speech DLL

Heute morgen habe ich ein Plugin fertiggestellt mit dem es möglich ist die Windows Spracherkennung in Lite-C (also dem 3D GameStudio) zu nutzen. Das ganze funktioniert soweit wunderbar allerdings ist die API noch nicht ganz ausgereift UND sie erkennt lediglich Englisch. Wen das nicht stört der wird mit dieser DLL viel Spaß haben!

Wie das ganze in ein Lite-C Projekt eingebunden wird seht ihr in der beiliegenden Demo!

SpeechRecognition_Demo.zip

Bei Fragen und Anregung einfach kurze Mail an mich!

[Tutorial] Firefox Plugins mit Delphi

Durch Viermalbe’s Idee eine Add-On / Plugin für den Firefox zu entwickeln das einem das Einkaufen auf Amazon erheblich erleichtert bin ich drauf gekommen mal ein Tutorial zu schreiben, dass das Entwickeln von Plugins in Delphi für den Firefox erklärt. Lange Rede kurzer Sinn, hier ist das gute Stück 🙂

Plugin_Development_for_Mozilla_Firefox_with_Delphi.pdf

Tower Defence – Neues Spielprinzip, viel Spaß und tolle Grafik

TowerDefence - In game
TowerDefence – In game

Eigentlich hat man ja im Studium eher mit zäher Theorie zu tun. Stimmt auch. Aber ähnlich wie bei Asterix gibt es einige unbeugsame Dozenten die tapfer Widerstand leisten. So auch in unserem Falle als uns aufgetragen wurde ein Spiel zu programmieren. Die Mehrheit reagierte mit einem Stöhnen und resignierte alleine bei dem Gedanken daran sich in die Materie einarbeiten zu müssen, andere – Wie ich – fanden es einfach nur klasse!

Die Frage war nun: Was programmieren wir? Was gibt es noch nicht? Was macht Spaß? Und letztendlich, was gibt gute Noten?

Die Entscheidung fiel auf ein Tower Defence!
Ein Tower Defence ist ein Spiel an dem Figuren einen vorgefertigten Pfad entlangwandern um am Ende ein Ziel zu erreichen. Aufgabe des Spielers ist es, die Figuren davon abzuhalten indem sie Türme neben den Wegen bauen um diese abzuschießen. Die Herausforderung dabei liegt im richtigen Platzlieren und Ausbauen der Türme, sodass möglichst effizient die Zeiten an denen Gegner in Reichweite der Türme sind getroffen werden.

Continue reading “Tower Defence – Neues Spielprinzip, viel Spaß und tolle Grafik”

Natural Language Bots – Darf ich mal kurz mit Ihnen reden?

Durch die Vorlesung in Wissensbasierte Systeme animiert hab ich mich mal einen Abend hingesetzt und einen Chatbot nach dem JabberWackey Prinzip geschrieben geschrieben. Dieses funktioniert wie folgt:

Funktionsweise von JabberWackey
Funktionsweise von JabberWackey

Da das Programm auf Client / Server-Basis läuft hat man auch hoffentlich immer mehrere Gesprächspartner, sodass man auf Fragen anderer leicht eine Antwort durch einen zweiten Client enthält.
Das Tool gibt es samt kleiner Gesprächsdatenbank (Vielen Dank für’s Füllen Thomas) auf der Tools-Seite oder hier als direkten Download.