The Selfish Class
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.