Solid Prenciples 1-) Single Responsiblity 2-) Open Close 3-) Liskov Subsutition 4-) Interface Segragation 5-) Dependency Inversion