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

NetTuts.com: 20 All Too Common Coding Pitfalls For Beginners

SitePoint PHP Blog: MySQL Transactions & Why They Canít Be Emulated in PHP

Perforce Software: Seven Pillars of Pretty Code

Padraic Brady's Blog: An Example Zend Framework Blog App - Part 2: The MVC Application Architecture

Lee Blue: PHP vs Ruby Ė Application Shelf Life


Community Events





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


language release podcast introduction list opinion interview version conference artisanfiles composer framework library community tool series security symfony voicesoftheelephpant laravel

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