Klassenstrukturen können manchmal recht komplex werden. Dann wird alleine schon die Instanzierung ein Verstoß gegen das DRY-Prinzip, oder soll dem Anwender nicht zugemutet werden. Hier kann ein Builder aushelfen.
Monat: August 2015
-
Restrukturierungen vereinfachen mit ::class
PHP 5.5 hat eine neue dynamische Klassenkonstante
::classeingeführt, die die Wartbarkeit des Codes deutlich verbessern kann. (mehr …) -
Entwurfsmuster – Module vereinheitlichen mit einem Adapter
In PHP sind wir bereits von vielen Plugins und Modulen umgeben, die unsere Probleme vollständig lösen und eigentlich gar keiner Erweiterung bedürfen. Da aber deren Entwickler natürlich nicht unsere Interfaces kennen und es auch keine allgemein gültigen Spezifikationen dafür gibt, müssen sie noch vereinheitlicht werden – dazu wird ein sogenannter Adapter verwendet. (mehr …)
-
Entwurfsmuster – Viele Kindklassen verwalten mit der Factory
Wenn in einem Modul so viele Arbeiter (Kindklassen) vorhanden sind, dass es aussieht wie eine Fabrik, dann könnte die Factory das Entwurfsmuster sein mit dem die Verwaltung wieder einfach wird.
Aber Spaß beiseite: In diesem Beitrag wird es darum gehen verschiedene Typen in Form von Kindklassen effizient zu instanzieren. (mehr …)
-
Grunt und SVN-Hooks
Nachdem sich Continuous Integration und agile Entwicklung durchgesetzt haben, ist praktisch ständig ein Release. Da will natürlich niemand mehr den ganzen Prozess händisch erledigen. In diesem Artikel soll es somit um die Automatisierung verschiedener Aufgaben mit Hilfe von SVN-Hooks und Grunt gehen. (mehr …)
-
Entwurfsmuster – Sinn und Unsinn des Singleton
In einer kleinen Reihe von Blogbeiträgen möchte ich die nächste Zeit auf verschiedene Entwurfsmuster eingehen, die uns als Programmierer immer wieder begegnen und uns die Arbeit erleichtern.
Es geht los mit einem der einfacheren Muster: Dem Singleton. Ich will verdeutlichen wozu es verwendet wird, welche Probleme es bereiten kann und natürlich gibt es auch ein Codebeispiel. Außerdem werde ich noch auf das Multiton als Weiterführung der Singleton-Idee eingehen. (mehr …)
-
Objektorientierung (OOP) – Verwalten der Dienste (Dependency Injection)
Klassen in PHP haben immer wieder Abhängigkeiten zu anderen Klassen – sogenannten Diensten (Service). Um diese möglichst flexibel und einfach verwalten zu können wird ein Service-Container benötigt. In diesem Blogbeitrag erläutere ich euch die Vorteile eines solchen Containers und gebe ein Beispiel wie er aussehen könnte. (mehr …)
-
PHPUnit – Übersicht der Methoden (Cheat Sheet)
Für euch Unittester da draußen, hier ein Cheat Sheet für den Alltag. Lohnt sich auch so zu lesen, um sich ein paar Anregungen zu holen. Wer kennt schon alle Funktionen auswendig. (mehr …)