요약 : 자신 클래스 안에 응집도를 높이고, 타 클래스들 간 결합도를 낮춘다( High Cohesion - Loose Coupling ), 응집도가 높고, 결합도를 낮추도록 설계 소프트웨어는 재사용이 많아지고, 수정이 최소화되어야 유지보수가 용이하다.S-SRP(Single responsibility principle) 단일 책임 원칙 모든 클래스는 단 하나의 책임을 가진다.(클래스를 수정할 이유가 오직 하나여야 한다) 예) 계산기 클래스, 계산을 하는 책임과 GUI를 나타낸다는 책임이 분리되어야 한다.(계산기 클래스에 GUI까지 있으면, SRP 위반이다) O-OCP(Open Closed Principle) 개방 - 폐쇄 원칙 확장에 대해서 개방, 수정에 대해서 폐쇄 캐릭터 하나를 생성 할 때, 각각의 캐..