Frogs design
From CSSEMediaWiki
(Difference between revisions)
Line 15: | Line 15: | ||
This design is perfect. It cannot be faulted. | This design is perfect. It cannot be faulted. | ||
+ | |||
+ | == Broken heuristics == | ||
+ | |||
+ | * [[Beware type switches]] | ||
+ | * [[Beware value switches]] | ||
+ | * [[Avoid no-op overrides]] | ||
+ | * [[One key abstraction]] |
Revision as of 22:31, 22 July 2008
An OO model of frogs. This beautiful design appeared in the 2004 427 exam.
Design notes
- This design models the lifecycles of Frogs.
- A Frog begins life as an Egg, grows into a Tadpole and then an AdultFrog.
- A FrogBrain belongs to a Frog and manages its behaviour.
- There is one Biologist, Igor, who sometimes moves Frogs around. Igor has been known to fry their legs in white wine.
- Toads don’t have the same lifecycle as Frogs, but they look and act a lot like Frogs.
- Toads eat AdultFrogs.
Design Critique
This design is perfect. It cannot be faulted.