Re: OO Design induces an existential crisis
- From: "Ilja Preuß" <it@xxxxxxxxxxxxx>
- Date: Wed, 6 Jul 2005 21:17:34 +0200
I had similar problems. What helped me was doing *less* design upfront,
allowing me to find (and fix) my errors much earlier through feedback of
the code. Yes, that means *a lot of* refactoring. With other words,
refactoring isn't a "future savings" for me, but how I come up with a good
design to begin with. In my experience, that's quite effective.
Have you read "Agile Software Development - Principles, Patterns and
Practices" by Robert C. Martin?
Regards, Ilja
> I have been programming (mostly procedural stuff) for almost 15
> years. I enjoy programming, take it seriously, and by general
> estimation I am quite good at what I do.
>
> Of these 15 years, I have spent about 7 years trying to train myself
> to do OO programming. I have no problem with *using* pre-existing
> classes, and even extending them. Similarly, I am comfortable with
> the *principles* of OO design. I have studied the GoF book carefully,
> as well as other less famous books on OO design.
>
> Still, when it comes to OO *design* I absolutely *suck*. I takes
> me so long to design anything that I often abandon projects for
> lack of time or loss of interest. Even when I complete a project
> involving OO design, the outcome is puny and incommesurate with
> the enormous effort invested. I often wonder whether the promise
> of future time savings (from ease of maintenance and refactoring)
> are paid for many times over by the *huge* amount of time and sweat
> that I have to put into my design phase.
>
> I am so bad at this that I am seriously wondering what on earth
> I'm doing in this line of work. As OO programming becomes more
> widespread I find myself more and more in the bizarre situation of
> being in a profession for which I have no aptitude whatsoever.
> I'm like the proverbial silent film actor witnessing the birth of
> the talkies. I seriously wonder if it's time for me to start
> thinking of a different line of work...
>
> My question is: how normal is this? Is OO design as horribly
> difficult as I find it? Or are there people who pick it up as
> easily as I picked up C, say? (I was up-to-speed with C in a few
> weeks; similarly for every other computer language I have taught
> myself.) Is there a turning point when one finally "gets" OO
> design? Should I consider some form of apprenticeship or internship
> to learn from experts? (I've exhausted the book route, and I doubt
> that classes will help, since I think my problem is not one of
> understanding principles, but rather of applying them to real-world
> programming tasks.)
>
> I'd very much appreciate your thoughts on this.
>
> kj
.
- Follow-Ups:
- Re: OO Design induces an existential crisis
- From: topmind
- Re: OO Design induces an existential crisis
- From: Rick Elbers
- Re: OO Design induces an existential crisis
- References:
- Prev by Date: Re: OOP/OOD Philosophy
- Next by Date: Re: OOP/OOD Philosophy
- Previous by thread: Re: OO Design induces an existential crisis
- Next by thread: Re: OO Design induces an existential crisis
- Index(es):
Relevant Pages
|