SOLID 원칙 OOP를 하며 따르기 위한 5가지 개발 원칙. 항상 지켜져야 하는 것은 아님. Robert C. Martin에 의해 만들어짐. (또 이 아저씨..) S - Single Responsibility (단일 책임) 하나의 객체는 한가지 책임만 가지고 있어야 한다. 만약 하나의 객체가 여러가지의 책임 또는 역할을 가지고 있는 경우, 책임 중 하나의 코드를 변경하면 자기자신도 모르게 다른 것들에 영향을 줄 수 있으므로 버그 가능성이 높아짐. 핵심 변경으로 인해 버그가 발생하더라도 다른 동작에 영향을 미치지 않도록 분리하는 것. O - Oepn-Closed (개방-폐쇄) 객체는 확장에는 열려있어야 하지만 수정에는 닫혀있어야 한다. 객체를 변경하게 되면 해당 객체를 사용하는 모든 곳에 영향을 끼친다...