News Feed
Sections




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

Paul Jones:
Quicker, Easier, More Seductive Names, Usage, and Intent
December 18, 2013 @ 10:39:05

Paul Jones has updated his "service locators vs dependency injection containers" series with another post to his site today, this time he focuses on implementation not names. He suggests that the difference in naming makes it easy to think they're very different things, so he focuses on implementation rather than just the names.

As the disucussion progressed, it became more clear to me that there really is no significant difference in how Dependency Injection containers and Service Locator containers are written. They are both Inversion of Control (IOC) containers, and are not distinguishable by their code, API, features, etc. (although some may have more or fewer features than others).

As such, the terms Dependency Injection and Service Locator appear to be interchangeable in the sense that a container is a container is a container. The difference in naming comes from how the container is used, not how the container is implemented.

He suggests that one of the main differences is where they are, either inside or outside of a non-Factory object. He circles back around to the names, though, and points out that when developers talk to one another, they need to be speaking the same language. As such, he tries to set this vocabulary for the implementations, separati

0 comments voice your opinion now!
dependency injection service locator implementation naming

Link: http://paul-m-jones.com/archives/5853

blog comments powered by Disqus

Similar Posts

Giorgio Sironi's Blog: Never write the same code twice: Dependency Injection

Sam Hennessy's Blog: A Dependency Injection for PHP Manifesto - Part 0 (Preface)

SecWatch.org: CJ Tag Board Multiple Parameter Handling PHP Code Injection Vulnerabilities

Developer Tutorials Blog: Port Scanning and Service Status Checking in PHP

Paul Jones' Blog: Solar 0.20.0 released


Community Events

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


library podcast voicesoftheelephpant series laravel interview composer conference application version performance opinion php7 community release symfony2 introduction example framework api

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