James Robertson explains the edge that Smalltalk's more pure objects have over languages with special "constructors". I'm thinking back to a really nice analogy Ward Cunningham made, oh dear, over a *decade* ago...
Everything I Really Need to Know About Object-Oriented Design I Could Learn on a Black-Diamond RunAnd just so, tomorrow's edges will be distributed, asynchronous message sends. Not those clumsy things you see in the SOAP catalogs. But those neat edges in the Erlang catalog. We'll need edges like those!I have been wondering if we aren't making this all more complicated than it need be. I wondered if designing isn't a lot like skiing, that is, easier to do than to explain or prescribe. Then I realized: everything I really need to know about object-oriented design I could have learned last weekend skiing Utah's black-diamond runs...
Now, to make these turns, I have to use my edges. I can't twist and turn my body to turn the skis; I must let the ski's edge do the work. So, let me ask you, what's the object designer's edge?
(silence)
Polymorphic message sends! That's what we use to turn a design around a bump. We plan and balance our designs just so we can apply that edge when we need it, which in practice is most of the time...
No comments:
Post a Comment