Zum Inhalt springen

Autor: Norbert

Interfaces – eine (kurze) Einführung

Nachdem ich wieder fit bin, gibt es nun einen kurzen Artikel zum Thema Interfaces. Dieser wird sicher nicht alle Aspekte betrachten und es wird ganz tolle Möglichkeiten geben, die ich nicht beschreibe, aber ihr sollt ein Lebenszeichen von mir bekommen.

Interfaces gibt es in PHP seit Version 5. Diese „Dinger“ sind vielen Programmierern etwas suspekt. Schließlich wird nicht darin programmiert und dennoch haben sie einen Nutzen. Zuerst gibt es aber wie sooft ein kleines Beispiel, das zeigt wie so ein Interface überhaupt aussieht.

Hudson PHP Build um Sloccount erweitern

Für alle, die inzwischen mit dem Hudson experimentieren gibt es eine Ergänzung. Diese kann mit relativ wenig Aufwand eingebaut werden. Es handelt sich dabei um SLOCcount. Dies ist ein Tool, dass die Source Lines of Code (also die Anzahl der Sourcecode-Zeilen) bestimmt und ausgibt. Die Hudson Integration bietet einen neuen Menüpunkt in der Detailansicht des Jobs an und man kann die SLOCs anschauen.

Planning Poker – Zeitschätzungen als Spiel

Vor kurzem habe ich bei phpHatesMe einen Beitrag zum Thema Planning Poker gelesen. Das Konzept fand ich ganz interessant und habe gleich den Link an einige Kollegen weitergereicht. Da wir sowieso agil entwickeln, wollten wir beim nächsten Planning Meeting den Poker einfach mal ausprobieren. Die bisherigen Schätzungen wurden gelegentlich durch längere Diskussionen überschattet.

Neue Festplatte im MacBook Pro

Heute gibt es einmal einen nicht-PHP Beitrag. Ich habe die Tage die Festplatte meines MacBook Pro (late 2008) ausgetauscht und bin hierbei auf ein paar Probleme gestoßen, die inzwischen gelöst sind. Hier gibt es nun eine Beschreibung und auch die Problemlösung. Desweiteren eine kurze Beschreibung von TimeMachine, was den Umbau softwaremäßig zu einem Kinderspiel gemacht hat.

Continuous Integration – Teil 3 (Hudson CI)

Im dritten Teil der CI-Serie geht es um den Hudson-CI. Es handelt sich dabei ebenfalls um einen Java CI Server. Dieser ist aufgrund seiner einfach Konfiguration über sein Webinterface und die große Auswahl an Pugins sowohl bei Entwicklern als auch bei Administratoren sehr beliebt. In diesem Beitrag gehe ich auf die Installation und Konfiguration und natürlich auf die Integration von PHP ein.

Java Daemon und die Sache mit ipv6

Bei meiner Recherche zum Thema CI Server und PHP bin ich über ein interessantes Problem gestolpert, dass nicht nur mich beschäftigt hat. Eine Kollegin ist hier auch auf die Nase gefallen und daher gibt es hier im Vorfeld schon mal eine kleine Beschreibung. Die CI Server CruiseControl und Hudson sind in Java geschrieben und bei beiden ist folgendes Verhalten aufgefallen. Man startet den Server und er ist nicht erreichbar bzw. findet sich selbst nicht, wie dies im Fall von CruiseControl passiert ist. Fehlermeldungen (bzw Exceptions) mit der Aussage „Network unreachable“ sind hier aufzufinden. Aufgetreten ist es bei mir unter Debian Squeeze und ich weiß, dass es zumindest bei CentOs auch der Fall ist.

Design Pattern: Fluent Interface

Diese Design Pattern ist sehr interessant und dabei auch noch sehr einfach. Wenn man eine Klasse definiert hat man normalerweise private Attribute, die man über Setter und Getter anspricht. Wenn man 3-4 Attribute auf einmal befüllen will, kann man eine convenience-Methode definieren. Dies hat den Nachteil, dass man Sinn eines Wertes nicht auf den ersten Blick sieht und man dann doch die IDE bemühen muss. Alternativ kann man auch die Setter nacheinander aufrufen. Um das ganze zu verschönern und zu vereinfachen nutzt man ein Fluent Interface.

Logging mit dem log4php-Framework

Ein wichtiges Thema bei der Entwicklung – und darüber hinaus – ist das Logging. Üblicherweise gibt es verschiedene Log-Level, die angeben wie schwer ein Fehler ist bzw ob es sich nur um eine Information oder nur eine Debug-Meldung handelt. Der Vorteil eines Logging-Frameworks ist die Einfachheit in der Konfiguration, denn ein Entwicklungssystem, ein Stangingsystem und das Livesystem nutzen verschiedene Einstellungen. Log4php ist ein solches Framework, das vom Aufbau her wie log4j ist und im Apache Incubator Programm zu finden ist.

By continuing to use the site, you agree to the use of cookies. more information

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.

Close