Das richtige Bennenen von Variablen

2009 27 September

Auch wenn es trivial klingt so ist doch die richtige Bennung von Variablen ein sehr wichtige Sache, um Code über längere Zeit sauber und klar zu halten. Denn auch hier gilt der Grundsatz von Lao Tse "Verhüte das Große solange es noch klein ist". Wir alle haben schon Code gesehen, der Anfangs eigentlich noch ganz in Ordnung war und bei jedem zusätzlich Feature oder ChangeRequest immer ein Schritt unleserlicher wurde bishin zu kaum noch wartbarem Code.
Aus diesem Grund habe ich hier die meiner Meinung nach wichtigsten Punkte zusammengestellt die bei der richtigen Wahl des Variablennamens helfen sollen:

  • Die Variable soll genau beschreiben wofür sie steht.
  • Aus dem Namen soll klar werden, warum sie existiert, wofür sie verwendet wird und wie sie benutzt wird.
    Variablen die einen Kommentar benötigen sind sind auf jeden Fall zu verermeinden
    $d oder $count // Tage seit Beginn
    Sinnvollerwäre es hier die Variable:
    $daysSinceBeginn
  • Verweist der Name auf ein Sachverhalt „aus dem wirklichen Leben“ statt sich an Details der Programmiersprache anzulehnen
  • Eine Variablen soll im Kontext Sinn ergeben also eher $members als $array heißen.
  • Sind temporäre Variablen sinnvoll benannt. Da innerhalb von Methoden alle Variablen temporär sind hilft es niemandem Variablen einfach nur $temp o.ä zu nennen.
  • Ist klar wann boolsche Variablen den Wert true haben.
  • Nicht
    $status = true
    sondern
    $isAktiv = true
  • Abkürzungen vermeiden
  • Wer soll schon wisssen, dass $dsb für $daysSinceBeginn steht.
  • Verweisen Konstanten eher auf abstrakte Sachverhalte als auf Zahlen für die sie stehen
  • Also es soll eher
    Const MAX_NUMMER_OF_ITEMS = 7 
    heißen als
    Const SEVEN =  7
    was in diesem Fall gleich käme mit überhaupt keine Konstante zu verwenden sondern die Zahl direkt.

Wer mehr Interesse an diesem Thema hat dem empfehle ich folgende zwei Bücher aus denen ich die meisten Punkte übernommen habe: CleanCode und CodeComplete


Bearbeiten

Wie bekomme ich meine Unittests grün ?

2009 25 August

unit-testing-webdesigner.gif

mit Photoshop :-)

Danke phpkitchen.com


Bearbeiten

Firebug für Internet Explorer

2009 21 August

Obwohl es den Firebug Lite schon eine Weile zu geben scheint habe ich jetzt erst erfahren, dass es ihn gibt.
Denn für das Debugging von IE Bugs hatte ich mir sowas schon immer gewünscht.

Download und Doku gibt es hier


Bearbeiten

Virtuelle Machine als Entwicklungsumgebung

2009 29 July

Da ich immer sehr angenehm finde mit einer Linux Entwicklungsumgebung zu arbeiten. Habe ich mir auf meinem neuen Mac 10.5 ein debian Virtual Machine als WebServer eingerichtet. Unter Windwos sollte das ziemnlich ähnlich laufen, es muss halt nur mit samba gemountet werden.

Folgendes Schritte sind dazu notwendig.

  1. Debian als Virtuelle Machine installieren. Die üblichen Pakete die man so braucht.
  2. sudo apt-get install apache2 php5 mysql-server php-pear php5-xdebug php5-mysql ssh
  3. Vhosts einrichten unter debian einfach eine neue Datei sqladmin.vmware in /etc/apache2/sites-available/ anlegen:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName sqladmin.vm
DocumentRoot /usr/share/phpmyadmin
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /usr/share/phpmyadmin>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
</VirtualHost>

Diese braucht dann noch ein symlink nach /etc/apache2/sites-enabled

link -s /etc/apache2/sites-available/sqladmin.vm 
/etc/apache2/sites-enabled/sqladmin.vm

Jetzt müsst ihr in der lokalen /etc/hosts Datei den vhost eintragen z.B.

192.168.178.27      sqladmin.vm

Jetzt könnt ihr schon mit der Url (http://sqladmin.vm) auf die Seite zugreifen sofern in dem Verzeichniss /usr/share/phpmyadmin entsprechend Dateien liegen.

So jetzt muss das ganze noch gemountet werden damit wir mit IDE leicht drauf zugreifen können.
Zunächst muss der NFS Server lokal eingerichtet werden. Falls die Datei nicht existiert muss sie neu erzeugt werden.

Oder ihr könnt dieses Tool verwenden

sudo vi /etc/exports 

Eine Zeil nach folgendem Schema einfügen:

 /Users/torsten/Sites -mapall=torsten -network 192.168.178.0 -mask 255.255.255.0
showmount -e 

zeigt euch ob das geklappt hat.

Jetzt erst den nfs client auf der vmware installieren

apt-get install nfs-common portmap

und mit

mount -t nfs 192.168.178.20:/Users/torsten/sites /var/www

die Ordner mounten.
Ihr könnt natürlich weitere Vhosts nach belieben anlegen. Hier nach var/www/site.
Die Dateien lassen sich jetzt einfach lokal editieren.
Die Unitests könnt ihr auf der vmware ausführen oder über den Browser das Frontend aufrufen.


Bearbeiten

Qualität in Software

2009 21 June

Wenn man mal ehrlich ist, dies ist die einzig wahre Methode:


Bearbeiten
Torsten Zander


 RSS Feed abonnieren

Twitter  Auf Twitter folgen

Posts

Blogrolls