Freitag, 9. Januar 2009

News

präsentiert von: PHP Magazin
Montag, 31. März 2008

Jetzt sind es Zehn: IBM mit fünf neuen PHP-Design-Patterns

Nathan Good, Senior Information Engineer bei IBM, hat fünf neue Entwurfsmuster für die PHP-Entwicklung veröffentlicht. Ausgehend von den vor knapp zwei Jahren veröffentlichen Design Patterns

  • Factory Pattern, mit dem sich Objekte auf definierte Art und Weise erzeugen lassen.
  • Singleton Pattern, mit dem sich globale Variablen beim Einsatz von Singleton-Objekten vermeiden lassen.
  • Observer Pattern, mit dem sich andere Objekte beobachten lassen, um entsprechende Reaktionen zu bearbeiten. Kann helfen, eine zu enge Verzahnung einzelner Komponenten zu vermeiden, um später Änderungen am Code einfacher umsetzen zu können.
  • Chain-of-Command Pattern, das eine Nachricht (ein Request, einen Befehl,...) durch eine Reihe von Routinen leitet.
  • Strategy Pattern, bei dem Algorithmen aus ihren Klassen extrahiert werden, um sie so bei Bedarf leichter ersetzen zu können (ohne gleich die Klasse zu ersetzen).

hat er jetzt fünf neue Entwurfsmuster vorgestellt, die die Anwendungsentwicklung mit PHP deutlich erleichtern sollen. Zwei Vorteile der Anwendung solcher Muster stellt er dabei besonders heraus. Zum einen könne sie die Kommunikation im Team deutlich erleichtern, wenn man sich – anstatt über Klassen, Methoden und Schnittstellen zu unterhalten – gleich in Entwurfsmustern ausdrücken könne. Und zum anderen müsse man sich nicht mehr allzu viele Gedanken über das Design seines Codes machen, solange man nur das richtige Pattern gewählt habe.

Zu den von Nathan Good neu vorgestellten Entwurfsmustern gehören:

  • Adapter Pattern: Hilft, den Typ eines Objektes sehr sauber und übersichtlich in einen anderen Objekttyp zu überführen.
  • Iterator Pattern: Damit lassen sich neue Gegenstände, die man in einer Schleife verarbeiten möchte, zu einer solchen Schleife hinzufügen, ohne den entsprechenden Code selbst verändern zu müssen.
  • Decorator Pattern: Eine schöne Sache, um neue Features zu bestehenden Konstruktionen hinzufügen zu können.
  • Delegate Pattern: Damit lassen sich Verhaltensweisen, basierend auf bestimmten Kriterien, neu zuweisen.
  • State Pattern: Ähnlich dem Command Pattern, wobei es hier einer Klasse erlaubt, ihr Verhalten zu ändern, wenn neue Umstände auftreten.

Der Beispielcode zu allen vorgestellten Entwurfsmustern steht dabei auch als ZIP-File zum Download bereit. Bei allen Vorteilen, den der Einsatz von Design Patterns aber auch bringen mag, weist Nathan Good auch darauf hin:

When you're holding a hammer, everything looks like a nail.

Trotz aller Begeisterung solle man schon darauf achten, wo man Entwurfsmuster einsetze. Es komme eben auch immer darauf an, was man eigentlich genau in seinem Code erreichen möchte.

(rl)

Konferenzen

BASTA! Spring 2009

BASTA! Spring 2009

23.-27. Februar 2009
Maritim Rhein-Main Hotel Wissenschaftsstadt Darmstadt

Entwicklertage 2009

Entwicklertage 2009

23.-27. Februar 2009
Darmstadt

BASTA! Italia 2009

BASTA! Italia 2009

16.-18. März 2009
Holiday Inn EUR Parco dei Medici, Roma

PHPCon Italia 2009

PHPCon Italia 2009

18.-20. März 2009
Holiday Inn EUR Parco dei Medici, Roma

JAX 09

JAX 09

20.-24. April 2009
Rheingoldhalle Mainz

Eclipse Forum Europe 09

Eclipse Forum Europe 09

20.-24. April 2009
Rheingoldhalle Mainz

webinale 09

webinale 09

25.-27. Mai 2009
Berlin

RailsWayCon

RailsWayCon

25.-27. Mai 2009
Berliner Congress Center, Alexanderplatz, Berlin

Werbung
Top-Jobs

Endress+Hauser GmbH+Co. KG

Entwickler Datenbanksysteme (m/w)

Software & Support Verlag GmbH

Redakteur (m/w), Vollzeit

Software & Support Verlag GmbH

Volontär (w/m) Redaktion, Vollzeit

Signsoft GmbH

Java-Entwickler (m/w)

Software & Support Verlag GmbH

Lektor (m/w), Vollzeit
JAX 09

Magazine

Entwickler Magazin - Enterprise Technologies & Business Solutions

Entwickler Magazin

Enterprise Technologies & Business Solutions

dot.net magazin - die unabhängige Quelle für .NET-Technologien

dot.net magazin

Die Quelle für .NET-Technologien

Eclipse Magazin

Eclipse Magazin

Weltweit erstes Magazin für Eclipse-Entwickler

Java Magazin - Internet & Enterprise Technology

Java Magazin

Internet & Enterprise Technology

Ruby on Rails

RailsWay Magazin

Ruby on Rails

CREATE OR DIE - Ein Leben für die Kreativität

CREATE OR DIE

Ein Leben für die Kreativität

Business Technology - Management Magazin

Business Technology

Management Magazin

PHP Magazin - Professional PHP Development

PHP Magazin

Professional PHP Development

Bücher


hosted by HostEurope