| bio | website | |
|---|---|---|
| location | California | |
| age | 38 | |
| visits | member for | 2 years, 4 months |
| seen | Apr 23 '11 at 14:04 | |
| stats | profile views | 36 |
|
Dec 31 |
awarded | Yearling |
|
Apr 12 |
awarded | Popular Question |
|
Dec 31 |
awarded | Yearling |
|
Aug 4 |
awarded | Nice Answer |
|
Apr 5 |
comment |
Where does this concept of “favor composition over inheritance” come from? There you go. My Delphi experience is exactly zero, so I can't speak to that. But the first few "big things" I ever built in Java relied heavily on inheritance and i paid for it later - much harder to adapt later on. |
|
Apr 5 |
awarded | Commentator |
|
Apr 4 |
comment |
Where does this concept of “favor composition over inheritance” come from? As others have pointed out, it's been around a long time - I'm surprised you're just now hearing of it. It's intuitive to anyone who has been building big systems in languages like Java for any amount of time. It's core to any interview I ever give and when a candidate starts talking about inheritance, I begin to doubt their skill level and amount of experience. Here's a good introduction to why inheritance is a brittle solution (there are many many others): artima.com/lejava/articles/designprinciples4.html |
|
Apr 4 |
comment |
Structured programming versus OO programming Right - that must be why "Favor composition over inheritance" is one of the core ideas of the GoF book among many others. I can't tell you the last time I relied heavily on subclassing and every time I do I feel like there must be a better design. It's a common misconception that subclassing is a core part of the original intent of OOP. It's almost always bad design to build a tree of subclasses. artima.com/lejava/articles/designprinciples4.html |
|
Apr 4 |
comment |
Structured programming versus OO programming In my experience, inheritance is best avoided in OOP. How often do you actually build a superclass as opposed to an Interface? Favor composition as a general rule. |
|
Apr 3 |
comment |
Getting Overwhelmed: Tips for noobs I guess in that case, just pick a place to start. The web is a pretty exciting space - write some services or learn to be do cool things with JQuery. Or pick a language or three and work through Project Euler. No matter what you do, there's nothing like just doing it. Best of luck! |
|
Apr 3 |
awarded | Nice Answer |
|
Apr 2 |
answered | Getting Overwhelmed: Tips for noobs |
|
Apr 1 |
answered | Arguments in support of organizational transition to Scala development |
|
Jan 25 |
awarded | Scholar |
|
Jan 25 |
accepted | Introducing Scala to a Technical Manager |
|
Jan 23 |
awarded | Nice Question |
|
Jan 23 |
awarded | Student |
|
Jan 22 |
comment |
Introducing Scala to a Technical Manager Thanks for sharing your examples and congratulations that you work with Java developers open-minded enough to hear about Scala. I'll be sure to post the examples I come up with by the end of the weekend. |
|
Jan 22 |
comment |
Introducing Scala to a Technical Manager Great reply and good ideas. I definitely plan to steer clear of anything advanced like higher-kinded types, as I think that would work against me. My coworkers would definitely not see the appeal of Scala's more advanced functionality and would probably ding it with the "too complex" brand. I'm not sure about XML - I've definitely found it useful for quick one-offs. I'll give it some thought. In any event, some great thoughts here. Thanks! |
|
Jan 22 |
comment |
Introducing Scala to a Technical Manager Great reply! Thanks for taking the time to put this together! |