[Newbies] isKindOf considered questionable
tapplek at gmail.com
Sat Jun 21 16:33:03 UTC 2008
On Sat, Jun 21, 2008 at 08:13:48AM -0700, stan shepherd wrote:
> Hi, I'm using isKindOf as part of my unit tests,
> self should: [(mare maternalStrand at: 100)
> isKindOf: Gene];
> When I run through the code critics, isKindOf is flagged as a 'questionable
> message'. I can't find any reference to why it should be so; can someone
> explain please?
It is considered bad when isKindOf: is used in the following
(anObject isKindOf: String) ifTrue: [anObject size]
It is good design to let an object decide what to do when it
recieves a message, rather than using isKindOf: to decide
whether you should send an object one message and not another.
The reason being that, someone may want to use a different kind
of object that respects the String protocol.
Objects are better classified by what messages they respond to,
not what class they may be.
For unit tests, this is a good use for it, though.
Matthew Fulmer -- http://mtfulmer.wordpress.com/
More information about the Beginners