[Edu-sig] Design Patterns

Kirby Urner urnerk at qwest.net
Sat Aug 27 07:52:41 CEST 2005


> Kirby seems comfortable in the Meyerist camp.
> 

I think you might be reading something too sinister into "information
hiding" and are therefore against it.

The brutal real world truth is the client wants an API that works today, but
will complain if it doesn't deliver tomorrow, even if specs shift in the
mean time.  A lot of programming arises from this dual use:  freedom to use
now, freedom to change it under the hood later.  

Properties help insert a layer between mutable programmer code and a slick
API that clients like and want to keep using.  It's a matter of keeping a
favorite notation relatively static, thereby insulating users from messy
inner details.  That's *one* meaning of information hiding, and I think a
benign one.

My world assumes you have access to source code.  Information hiding is
relative to something.  If you have no source code at all, then it's all
hidden, and so what's the point of even talking about what's hidden or not?

> But I feel my anti-Meyerist sentiments are somehow bound to my pro-Python
> sentiments.  So am having trouble with my Meyerist Python friend's stance.
> 
> Art

I think you're espousing an open source ethic, but maybe confuse the purpose
of properties with something "information hiding" needn't mean.  It could
just mean a notational integrity that insulates programmers from other
programmers.  It's like wearing business suits or casual dress.  We don't
want to keep adjusting our eyeballs from one freakazoid API to another.
Just give us a uniform integrated control panel please, and do your behind
the scenes work behind the scenes (but let us peek if we get curious).

Kirby




More information about the Edu-sig mailing list