Alexander Shvets
A comprehensive guide into design patterns and OOP concepts. SOLID principles design patterns programming refactoring