Alle Beiträge von Oskar Bley

Guard Clauses

Oft brauche ich eine Funktion, die mir einen von verschiedenen Faktoren abhängigen Wert zurück liefert. Das folgende Beispiel stammt aus der Berechnung von Bonuspunkten für einen Onlineshop.

public function getCreditPoints()
{
    $points = $this->_getBasisPoints();

    if ($this->_isPayedWithCreditCard()) {
        $points *= 1.1;
    } else if ($this->_isPayedWithPrepayment()) {
        $points *= 1.25;
    }
    return $points;
}

Der Code ist soweit okay, lässt sich aber in einer Hinsicht noch optimieren. Jeder, der sich die Methode anschaut, muss sich sowohl beim if-Block als auch beim elseif-Block merken, was bisher passiert ist. Denn zu dem Zeitpunkt weiß der Leser ja noch nicht, dass mit $points nichts mehr gemacht wird.

Weiterlesen

CMS, Framework oder selbstprogrammiert?

Wer ein neues Projekt beginnt, stellt sich oft zu Beginn die Frage, wie er es realisieren soll. Man kann alles selbst programmieren, die Hilfe eines Frameworks in Anspruch nehmen oder zu einem CMS wie Joomla oder Drupal greifen.

Weiterlesen

Coding Standards

Das Problem von unleserlichem Code kennt wahrscheinlich jeder. Ganz gleich, ob es der eigene Code ist, den man zum ersten Mal nach langer Zeit wieder bearbeiten muss, oder ob es fremder Code, die Probleme sind meist die selben: An Kommentaren wurde gespart, die Formatierungen scheinen willkürlich und vielen Stellen merkt man an, dass sie nachträglich hinzugefügt wurden.

Weiterlesen