Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change
 
PerlMonks  

Re: Sports::Baseball::Teams

by merlyn (Sage)
on Sep 25, 2001 at 06:14 UTC ( [id://114463]=note: print w/replies, xml ) Need Help??


in reply to Sports::Baseball::Teams

I don't quite get this. From an object design standpoint, you have constant objects with no internal state, and an object class that is not particularly reusable because there's no real allowances for subclassable items. This means it's not really an object you want, but a package of subroutines instead. About the only thing you're using of the object-ness is the overloading.

Worse yet, the following code fails (I think):

## first put all my favorite teams in a list: my @favorites = map { Sports::Baseball::Teams->new($_) } qw(Sea Tex An +a); ## now, let's notice a particular team playing tonight my $tonight = Sports::Baseball::Teams->new("Sea"); # seattle tonight ## let's see if this team playing tonight is one of my favorites: if (grep $_ == $tonight, @favorites) { ## THIS WON'T BE TRUE, BUT IT SHOULD BE }
The reason is that a unique instance is not returned for a given team. Each new call asking for Seattle will return a distinct Seattle object. That's bad. Real bad.

There's your initial review. To get more details, you'll have to pay me. {grin}

If you wanna learn objects well, get Squeak and play with it a bit. Smalltalk rocks.

-- Randal L. Schwartz, Perl hacker

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://114463]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others taking refuge in the Monastery: (6)
As of 2024-04-19 06:25 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found