JavaScript: Lazy Instantiation

In JavaScript hat das wohl meist bekannte (und unterbewusst am häufigsten verwendete) Entwurfsmuster, das Singleton, einen großen Nachteil. Beim Laden der Seite werden alle Skripte initialisiert und die Singleton Klassen somit sofort ausgeführt. Wenn ein Singleton eine aufwendige Initialisierungs-Methode bzw. sehr ressourcenintensiv ist, kann es Sinn machen die Instanziierung auf einen späteren Zeitpunkt zu verschieben, beispielsweise erst dann wenn es das erste Mal verwendet wird.

Wie das mittels Lazy Instantiation in JavaScript funktioniert zeigt dieser Artikel.

(more…)

C#: Dispatcher schnell gewrapped (vereinfacht)

Welcher C#-/.NET-Entwickler kennt es nicht? Die Anwendung bzw. das UI hängt während einer länger dauernden Prozedur und wurde daher in einen eigenen Thread ausgelagert.
Status Updates an das UI müssen dann entsprechend ge-dispatched werden. Je nach Code Komplexität weiß man jedoch manchmal nicht, in welchem Thread man sich befindet und ob die Aktualisierung im UI nun mittels Dispatcher erfolgen muss.

(more…)

AR Drone 2.0 via C# Programmieren & Steuern

Wenn ihr Besitzer einer AR Drone (2.0) von Parrot seid und nebenbei auch noch der C# Programmiersprache Herr seid, dann wäre es doch eine Schande diese beiden nicht miteinander zu koppeln.
Im Netz gibt es einige Open Source und Community Projekte die sich mit der AR Drone Programmierung beschäftigen, jedoch sind diese alle veraltet, gelten nicht für die Drone Version 2.0 und sind leider mit der Zeit in Inaktivität versunken.

Daher habe ich hier eine simples Grundgerüst für eine AR Drone Steuerung in C# für euch, welches ich selbst für die Ansteuerung der Drone mit Bewegungsdaten von der Kinect verwende.

(more…)

JavaScript: (Immediate Function)(); ?!

(function(){ console.log(‘hallo, ich bin eine immediate function’); }()); Da fragt man sich doch, was soll das? Ganz einfach: Eine immediate function ist im Prinzip eine anonyme Funktion, welche sich nach ihrer Definition sofort ausführt und anschließend verwirft. Aber was macht man mit einer anonymen Funktion welche sich sofort Ausführt und Read more…

JavaScript: How to create class with private elements?

Um in JavaScript, einer nicht unbedingt klassenbasierten Sprache eine Klasse mit “echten” privaten Methoden oder Attributen zu erstellen ist daher nicht Möglich. Aufgrund der prototypischen Beschaffenheit der Sprache lässt sich allerdings vieles aus einer klassichen klassenbasierten Sprache “nachbauen”. Um eine Klasse mit öffentlichen (public) und privaten (private) Methoden oder Attributen Read more…