News Feed
Sections




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

Padraic Brady's Blog:
Interfacing The PHP World Would Be Good
October 27, 2011 @ 11:36:30

Padraic Brady has posted his own response to some of the recent talk about making standard interfaces in PHP applications. His perspective focuses on interfaces and coupling as related to the Zend Framework.

Every PHP framework has it's own unique set of interfaces for common operations such as logging, caching, http clients, filtering, validation, etc. This creates a situation where a framework tends to be loosely coupled but only within the scope of its own interfaces. [...] Loose coupling is therefore a bad joke. It is a narrowly defined concept usually described within the scope of one particular application. We never really apply the concept across multiple applications written with different frameworks because, at that point, the disparate interfaces of both frameworks would immediately make loose coupling unobtainable.

He goes on to talk about a simple example, ZendFeedReader, and how it's very difficult to swap something as simple as the HTTP client out for one from another framework. He mentions the common scapegoat for over-interfacing - Java - and how PHP's is a bit more "practical and flexible" in that department (a good and bad thing).

So yes, common interfaces would benefit PHP and would make framework libraries more interoperable and thus usable within competing frameworks. Hey, if you can't beat them at least make sure you can inject your classes into them. Hmm, still sounds dirty.
0 comments voice your opinion now!
interface discussion common opinion zendframework symfony2


blog comments powered by Disqus

Similar Posts

Raphael Stolt's Blog: Utilizing Twitter lists with Zend_Service_Twitter

Court Ewing's Blog: Follow-up: How PHP is Broken and How It Can Be Fixed

Douglas Brown's Blog: Twitter Tag Cloud Service

Alexander Netkachev's Blog: Zend_Controller classes

Lukas Smith: Decoupled mindset


Community Events





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


community language threedevsandamaybe laravel list refactor install opinion code series api testing introduction unittest release interview framework symfony2 developer podcast

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