A collection of useful patterns for OOP