Object-oriented programming is the de facto programming paradigm for many programming languages. This book provides an introduction to Object-oriented programming (OOP) for C# developers. It also provides overviews and numerous samples to guide readers towards OOP mastery.
The Three Pillars of OOP
General Responsibility Assignment Software Patterns or Principles (GRASP)
Download Here (PDF)