JAVA OOP
Inheritance
Polymorphism
Encapsulation
Class Relationship
Apex Design Patterns
https://www.youtube.com/watch?v=Mh7KA4Bxclc