Stream interfaces
Topmind
topmind at technologist.com
Thu Mar 1 22:11:54 EST 2001
> tgagne at ix.netcom.com (Thomas Gagne) wrote (abridged):
> > Your correct. People are confusing inheritence and usefulness. I
> > don't have enough spare cycles to worry about a class'
> > inheritence unless I've discovered missing functionality. Since
> > I haven't, I haven't.
>
> Well, I have. In the streams hierarchy, too. Albeit not that vendor and
> in a beta product so I probably shouldn't say too much about it, but the
> hierarchy was very similar. The problem was analogous to methods added to
> WriteStream not magically appearing in ExternalWriteStream.
>
> The vendor's fix was to cut&paste methods from one class to the other.
> But this is just sticking plaster. The class hierarchy is deeply wrong,
> violates "once and only once" all over the place and needs refactoring.
> It's not about missing functionality so much as how we can add new kinds
> of stream without more error-prone cut&paste.
>
> Whether this can be fixed without breaking existing clients, or fixed at
> all without multiple inheritance, I don't know because I've not tried it.
> I hope it can be and the problem is not with Smalltalk generally but just
> this particular bit of library design. But for whatever reason, this bit
> of library design is not ideal.
>
Where did the deep hierarchy kind of library design trend start?
Can anybody pinpoint an event or "leader" who appears to
have started that trend/fad?
And, why did the other vendors follow?
"Technical sociology" would make a fascnating topic or
study area IMO.
> Dave Harris, Nottingham, UK
-tmind-
More information about the Python-list
mailing list