> > > > Larry, > > > > I've thought about this very issue before (java developers sometimes > lament > > this issue, too), and I error on the side of duplication if I'm using > > inheritance. > > > > However, I'd say I rarely use inheritance for anything in my development, > > and I'm much more likely to use composition. > > > > When a project evolves that's built almost entirely using design patterns > > focused on composition, I find that I very rarely have to duplicate any > > documentation, or rework documentation later on because a completely new > > component is being used. > > > > Outside of PHP (Scala, Objective C, F#, etc.), it seems like inheritance > is > > advocated much less frequently, due to the power and simplicity of > > composition (e.g., change behavior at runtime, requires less knowledge of > > the parent classes.) > > > > Quoting the Head First book on design patterns: > > "Favor composition over inheritance" > > > > Now, there are situations where either inheritance is the most > appropriate, > > and/or the architecture is not directly under your control. And, as I > said > > at the beginning, I tend to error on the side of duplication. I just try > to > > never put myself in that situation :) > > > > Adam > > > > -- > > Nephtali: PHP web framework that functions beautifully > > http://nephtaliproject.com > > > > With the up-and-coming traits facility for PHP, it will be interesting > on how this gets resolved for documentation readers. > > Indeed, I'm excited for the new capabilities, but they won't come easily in terms of the development ecosystem. -- Nephtali: PHP web framework that functions beautifully http://nephtaliproject.com