News Feed
Sections




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

PHPMaster.com:
Understanding the Observer Pattern
February 23, 2012 @ 11:39:10

PHPMaster.com has a new tutorial looking at another popular design pattern, the Observer pattern, and sharing some example code putting it to use. (Their other design pattern articles include ones on command and factory patterns).

In this article I'll show you how to implement the Observer Pattern. You'll learn how various classes in the pattern relate to one another as subject and observers, how the subject notifies observers of a change in its state, and how to identify scenarios where it would be suitable to use the Observer Pattern in your own code.

The introduce the pattern by using an abstract "Observer" and "Subject" (that defines "attach", "detach", "getState", "setState", "notify" and "getObservers" methods) observer classes to coordinate the attached classes. They extend these classes with "Auth" and "Auth_ForumHook" show how to attach the "Auth_ForumHook" classes to the main "Auth" observer manager and change the state of the observer to notify it of an update.

You can find a more detailed explanation of the Observer pattern on Wikipedia.

0 comments voice your opinion now!
observer design pattern tutorial authorization


blog comments powered by Disqus

Similar Posts

DevShed.com: The Singleton and Factory Patterns in PHP - Working With Singletons

Refulz.com: Traits in PHP - Multiple and Nested Traits

Jack Slingerland's Blog: 24 PHP Dark Arts: Multi-Processing (Series)

Dave Gardner's Blog: Caching dependency-injected objects

DevShed: Moving Presentation Logic Out of Views with CodeIgniter


Community Events





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


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

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