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
- LLM 0.22, the annotated release notes - 17th February 2025
- Run LLMs on macOS using llm-mlx and Apple's MLX framework - 15th February 2025
- URL-addressable Pyodide Python environments - 13th February 2025