I recently visited the Hashrocket offices in Jacksonville, and while I was there I did a Lunch & Learn talk on the topic of of breaking down too-big classes into smaller pieces. In it I went over pros and cons of four strategies:
- Breaking the class into modules
- Decorators
- Dynamic module extension
- Object Composition
We had a nice long conversation after the talk proper, which is one of the things I like about these more informal talks.
Here’s the video:
http://vimeo.com/42622511
The slides are available as well.