Patterns of Software Construction - Stephen Rylander (Springer, 2022)