News Feed
Sections




News Archive
Looking for more information on how to do PHP the right way? Check out PHP: The Right Way

Zend Developer Zone:
Decorating with External Data
September 27, 2006 @ 08:50:00

On the Zend Developer Zone today, there's this new tutorial that looks at making the move from PHP4's object-oriented programming up to the "more complete obejct model of PHP5" - specifically with the Decorator design pattern.

While working on a project I realized one particular solution was a pretty good way to demonstrate the decorator design pattern together with some of PHP5's features, including abstract classes, interfaces, type hinting, the final keyword and the visibility of properties and methods. This article is intended for those of you who, like myself, are moving from object-oriented programming, including some use of design patterns, in PHP4, to the more complete object model of PHP5.

He sets up a scenario about the development of an online pizza ordering system to show how to "decorate" a pizza with each of the toppings on a list (instead of having to list out every pizza in every possible topping combination). Of course, all of the code is included and explained so you understand exactly what's happening. Finally, there's a demonstration of its usage - a simple call that grabs the stock level/name/cost of each of the items in stock (pizza combinations).

0 comments voice your opinion now!
decorator pattern pizza object oriented combination decorator pattern pizza object oriented combination


blog comments powered by Disqus

Similar Posts

Zend Developer Zone: Decorating with External Data

DevShed: Using the Memento Pattern with a File Reading Class

DevShed: Abstract Classes in PHP - Working with PHP 5

Stefan Mischook's Blog: OOP in PHP: New PHP Article in Web Designer Magazine (Nov 2006)

DevShed: The Basics of Implementing Adapter Objects with PHP


Community Events





Don't see your event here?
Let us know!


introduction release community interview configure framework api podcast install library project application developer bugfix code wordpress list threedevsandamaybe language series

All content copyright, 2014 PHPDeveloper.org :: info@phpdeveloper.org - Powered by the Solar PHP Framework