Re: OO Design induces an existential crisis





kj wrote:
> 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.

The savings come from implementation frameworks not your code per se.

>
> 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...

Try this. Get a copy of Just Java by Van Der Linden (I think). Java
is a right-sized O-O language that can be fun and easy. The book is a
gentle intro that is wonderful for beginners.

>
> 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.)

Not everyone is a code designer. No big deal. Continue to do what you
do best.

.



Relevant Pages

  • Use Jesus Christ
    ... > programming until very recently. ... >, but I've occasionally tried to understand Smalltalk ... In Java I've mostly been limited to server-side ... Object oriented design is a mental picture of objects and messages. ...
    (comp.object)
  • Re: mfc pitfalls
    ... In most MFC apps, you are writing code in that kind ... virtual methods usually work better than callbacks for most ... no syntax in the design for function pointers. ... programming in OO environment requires new ...
    (microsoft.public.vc.mfc)
  • Re: mfc pitfalls
    ... I see no callbacks in MFC. ... but I see no callbacks. ... premises of one of them as a basis of design or implementation in one of the others. ... programming in OO environment requires new ...
    (microsoft.public.vc.mfc)
  • **JOB POSTING** US-OH-Columbus - Java Developer - PERM
    ... Java Developer ... Able to work on programming projects with little supervision, ... design, unit coding, testing, debugging, and integration. ... Design and code applications from specifications. ...
    (comp.lang.java.programmer)
  • Re: SENIOR A.I. SOFTWARE ENGINEER POSITION - $90-120K - Dallas
    ... May design and build prototype applications. ... Expert C and C++ programming experience. ... Java / J2EE Architecture ... Understands standard software modeling techniques ...
    (comp.ai.philosophy)