The Selfish Class
19th May 2003
The Selfish Class provides a set of related patterns to help design software objects that encourage reuse. They seem to make a lot of sense; I’ve only read a smal part of the paper and I’m already spotting things that are reflected in software I’ve found reusable in the past. Key example:
Low surface to volume ratio: Objects with complex interfaces that conceal few of their internals are hard to understand and reuse. Therefore, Design objects with low surface to volume ratios, that is, objects with small external interfaces, or surface areas, that encapsulate a large volume of internal complexity.
That’s exactly why I find ezPyCrypto such an attractive class.
More recent articles
- OpenAI's new open weight (Apache 2) models are really good - 5th August 2025
- ChatGPT agent's user-agent - 4th August 2025
- The ChatGPT sharing dialog demonstrates how difficult it is to design privacy preferences - 3rd August 2025