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:
Inversion of Control - The Hollywood Principle
December 10, 2012 @ 09:43:50

In this new tutorial on PHPMaster.com, Alejandro Gervasio looks at the Inversion of Control methodology and how it's more than just an abstract reference to dependency injection.

Traditionally, application components have been designed to operate on and control the execution environment, an approach that delivers well to some extent. [...] Instead of making the module completely responsible for logging data to multiple endpoints, we can transfer the responsibility straight to the external environment. [...] Not surprisingly, the process of inverting these responsibilities between components and the environment is formally known as Inversion of Control (or in a more relaxed jargon, The Hollywood Principle), and its implementation can be a real boost when it comes to developing extensible, highly-decoupled program modules.

He uses a set of domain objects (Posts and Comments in a typical blog structure) and the Observer pattern to show how mixed up things might get if the application isn't carefully coded. He takes this and updates it to include a "comment notification service" that implements the SplObserver and is attached to the post to be executed on an event (in this case, the setting of a new comment).

0 comments voice your opinion now!
inversionofcontrol hollywood principle introduction listener observer tutorial


blog comments powered by Disqus

Similar Posts

Padraic Brady's Blog: Writing A Simple Twitter Client Using the PHP Zend Framework's OAuth Library

KillerPHP Blog: PHP Video: Processing Forms with PHP - part 2

Elijaa.org: Using cas() command from PECL Memcached

DevShed: Implementing the commit() and rollback() Methods with mysqli and PHP 5

PHP-Coding-Practices.com: Introduction To Security Vulnerabilities In PHP


Community Events





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


language community podcast framework mvc introduction series composer symfony interview library laravel security tool voicesoftheelephpant update opinion package release version

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