Not a problem.  Just didn't want anyone else to get the wrong impression.

-- 
Frank W. Zammetti
Founder and Chief Software Architect
Omnytex Technologies
http://www.omnytex.com

On Wed, June 1, 2005 10:35 am, Dakota Jack said:
> Sorry, Frank.  I did not mean to misrepresent you in any way but
> merely to use a jocular reference out of good nature.  I know you are
> into OOP.
>
> On 6/1/05, Frank W. Zammetti <[EMAIL PROTECTED]> wrote:
>> On Wed, June 1, 2005 9:47 am, Dakota Jack said:
>> > This is what our
>> > fellow traveler Frank Zammettie finds inherently suspicious about the
>> > *OOP nuts*.
>>
>> Woah, leave me out of this.  I've purposely stayed away from this thread
>> all this time, now I have to get in...
>>
>> I don't want anyone thinking I'm anti-OOP or anything remotely like
>> that.
>> I am very much an OOP proponent.  While I almost certainly have used the
>> term "OOP nuts" at some point because I think some people could probably
>> be described that way, that really sounds a lot more harsh than my
>> opinion
>> actually is, so let me clarify...
>>
>> What I have said is that I have seen many instances where people take
>> the
>> OOP exercise so far in trying to get a perfect architectural structure
>> in
>> place that they wind up writing code that is actually harder to
>> understand
>> than it otherwise could be.  There is great benefit to writing code that
>> is composed of smaller, largely interchangeable pieces rather than large
>> monolithic pieces.  We all know this.  However, I have seen this taken
>> so
>> far that it takes forever to grasp how all the pieces fit together to
>> form
>> the larger whole, and this is just as bad as writing one larger whole
>> would have been.
>>
>> Related to this, patterns are a wonderful invention, but I see day in
>> and
>> day out people trying to find a pattern for every single situation.
>> People seem to think that they have to solve every problem by finding a
>> suitable pattern.  The problem is, everyone seems to be so
>> "pattern-gung-ho" nowadays that they simply want to apply a pattern and
>> if
>> it actually makes things more complex, too bad.  If it doesn't really
>> fit
>> the problem but does happen to solve it, that's fine too.  A pattern
>> mismatch, or a pattern where none was truly needed, is just as bad as no
>> pattern at all in my experience.
>>
>> Simplicity is a beautiful thing.  That is always my underlying design
>> goal
>> for two reasons...
>>
>> One, in a corporate environment as I work in, you never know when
>> someone
>> else is going to have to come along and maintain your code.  You aren't
>> doing them any favors by writing code that, while architecturally sound,
>> is more complex to grasp.  If after three months they say "wow, this guy
>> architected this code perfectly!", that's great, but if those three
>> months
>> are spent not being especially productive while they try and understand
>> what you built, then the code wasn't well-written in the end.
>>
>> Two, when you jump around between many different projects, you tend to
>> forget your own work quickly.  I sometimes look at code I wrote just
>> last
>> year and go "I don't remember how or why I did this".  Fortunately I
>> comment the hell out of everything I do, but more importantly I try to
>> code in straight-forward ways.  Sometimes that means *NOT* creating that
>> helper class to encapsulate 10 lines of code, even though that might
>> architecturally be better and fit some pattern, but instead just inline
>> it
>> (assuming I don't expect it to be shared of course).
>>
>> In a nuthshell, my point is absolutely *USE* OOP and patterns, and other
>> related techniques, think in those ways all the time, but don't
>> over-engineer things!!  Don't make design decisions because you CAN do
>> something, make them because it is the RIGHT thing to do.  And don't
>> over-complicate things for the sake of achieving some theoretical design
>> utopia.  Make your code easy to understand, even if sometimes at the
>> cost
>> of design trade-offs.  Naturally there is a balance to be struck...
>> architecture *IS* after all important!
>>
>> Frank
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>> For additional commands, e-mail: [EMAIL PROTECTED]
>>
>>
>
>
> --
> "You can lead a horse to water but you cannot make it float on its back."
> ~Dakota Jack~
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to