News Feed
Sections




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

Travis Swicegood's Blog:
Why Inheritance Sucks
October 12, 2007 @ 10:11:00

Travis Swicegood has made two blog posts about his agreement with other statements made about why class inheritance sucks.

From the original comments made by Bernard Sumption:

All of the pain caused by inheritance can be traced back to the fact that inheritance forces 'is-a' rather than 'has-a' relationships. If class R2Unit extends Droid, then a R2Unit is-a Droid. If class Jedi contains an instance variable of type Lightsabre, then a Jedi has-a Lightsabre.

Travis agrees and then comes back with his second post to clarify something - composition versus inheritance:

I approach OOP from a flexibility standpoint with one of its biggest flex-points being loose coupling which in turn promotes reusability. I'm going to use Event as a hypothetical example.

He uses Events and design pattern illustrations (like the Visitor and Observer) to help illustrate his point.

0 comments voice your opinion now!
inheritance designpattern observer event composition confusion inheritance designpattern observer event composition confusion


blog comments powered by Disqus

Similar Posts

Symfony Blog: symfony Events

Fabien Potencier's Blog: Create your own framework... on top of the Symfony2 Components (part 9)

Ibuildings Blog: Dutch phpGG Frontend Special: Win a ticket!

Robert Peake\'s Blog: Design Patterns Part II Is Out

Devis Lucato's Blog: Anonymous objects in PHP - Composition, Mocks, Refactoring


Community Events





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


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

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