Ich lerne Javascript neu!

Ich habe ein sehr kleines, aber interessantes Buch in der Bibliothek entdeckt: „JavaScript: The Good Parts“ von Douglas Crockford. Das Buch versucht den Aufbau von JavaScript zu vermitteln, indem es nur die guten Dinge von Javascript aufzeigt und die schlechten lediglich im Anhang erwähnt. Ein interessanter Ansatz, aber es ist trotzdem etwas trocken zu lesen. Die vorgestellten Methoden sind allerdings sehr nützlich. Die Beispiele könnten etwas mehr „CleanCode“ vertragen, da manche Variablen-/Funktionsnamen sprechender sein könnten. Ich denke ich werde etwas Erfahrung sammeln und mich dann an einem Artikel zu CleanCode in JavaScript versuchen.

Installation von MongoDB unter Ubuntu

Da ich eine Datenbank brauchen werde und ich mir nicht die Mühe machen möchte einen Objektrelationalen Wrapper einzusetzen, werde ich mal die dokumentorientierte Datenbank MongoDB ausprobieren. Ich verspreche mir von MongoDB eine schnelle Datenbank, in der ich einfach meine Javascript-Objekte speichern und wiederfinden kann. Diese Datenbank muss ich nun in meinem virtuellen Ubuntu installieren.

Ich habe es jetzt zum laufen gebracht, indem ich die Binaries runtergeladen und entpackt habe. Die Quickstart-Anleitung ist besser als die für die Paketmanager!

Anschließend das Verzeichnis /data/db anlegen und mongodb kann gestartet werden. Das war wirklich einfach!

Vorträge der MIX11 zu JavaScript

Die folgenden beiden Vorträge auf der MIX11 kann ich sehr empfehlen:

  • Javascript – The Language
    • Sehr interessante Einführung in Javascript, die sehr gut vermittelt wie mächtig Javascript ist und welche Art der Vererbung in Javascript genutzt werden kann!
  • Writing Maintainable Javascript
    • Ein paar Hinweise, wie man wartbaren Code in Javascript schreibt. Sehr hilfreich. Und ein sehr lustiger Vortragsstil!

Installieren von Node.js

Um mit Node.js zu arbeiten, benötigt man eine Installation. Die Windows-Packer funktionieren, aber ich hatte Probleme den Paketmanager npm damit laufen zu lassen. Deshalb wird meine Entwicklung mit Node.js in einem Ubuntu in einer virtuellen Maschine stattfinden.

Hier möchte ich beschreiben, wie ich diese Maschine installiert habe, da es viele Anleitungen gab, möchte ich hier den, wie ich finde, einfachsten Weg vorstellen.

Zunächst habe ich Virtual Box heruntergeladen und installiert. Danach habe ich eine Ubuntu Installations-CD runtergeladen, diese in Virtual Box eingebunden, eine Maschine erstellt und Ubuntu standardmäßig installiert.

Da dies nicht meine Produktivumgebung sein soll, habe ich eine Ubuntu Desktop Version gewählt.

Die Anleitungen zur Installation findet man auf nodejs.org im dortigen Wiki. Dort findet man auch eine Anleitung für Windows.
Ich habe diese Anleitung benutzt, welche Node mithilfe des Paketmanagers installiert. Für Ubuntu gab es folgende Befehle:

sudo apt-get install python-software-properties
sudo add-apt-repository ppa:jerome-etienne/neoip
sudo apt-get update
sudo apt-get install nodejs

Nachdem diese ausgeführt waren, konnte ich mit folgendem Befehl die Version von Node abfragen:

node -v

Direkt auf nodejs.org findet man ein Beispiel. Dieses habe ich dann noch in eine Datei gespeichert und ausgeführt. Es funktioniert.

Achja, zuletzt habe ich noch curl installiert, damit ich reine http-Requests absenden kann.

sudo apt-get install curl

Neuentdecktes und TechTalk Online

Ich habe mir heute den Tech Talk Online angesehen. Es war sehr interessant und ich konnte neues Wissen über T-SQL, Windows Azure und Windows 7 erfahren. Freue mich schon auf weitere Online Tech Talks. Aber auch einen richtigen würde ich gerne wieder besuchen.

Außerdem habe ich mir heute interessante Techniken angesehen.
Node.js ist eine hochskalierbare effektive Möglichkeit Webanwendungen zu schreiben. Als Programmiersprache wird dabei Javascript eingesetzt. Dadurch, dass alle I/O-Operationen ansynchron aufgerufen werden, ist der Memory-Footprint sehr viel geringer als bei normalen Servern.

MongoDB ist eine objektorientierte Datenbank. Anstatt Tabellen zu benutzen, werden Objekte in Sammlungen abgelegt. Dabei muss vorher nicht bekannt sein, wie die Objekte aussehen. Als Format für die Objekte wird JSON verwendet. Dadurch eignet sich die Datenbank gut für Webanwendungen und sehr gut für Node.js geeignet, da hier Objekte bereits im richtigen Format vorliegen.

Stay tuned.

Bücher, die aktuell von mir gelesen werden

  • Objektorientiertes Testen und Testautomatisierung in der Praxis von Uwe Vigenschow
  • Pragmatic Unit Testing – In C# with NUnit von Andrew Hunt und David Thomas
  • Agile Muster und Methoden von Manfred Steyer
  • Agiles Coaching von Rachel Davies und Liz Sedley

Ich bin auf der Suche nach dem Thema für meine Masterarbeit und recherchiere deshalb im Bereich Testing, Agile Methoden und Clean Code.

Hat jemand Buchvorschläge, dann her damit!