Solid

    좋은 객체지향 설계의 5가지 원칙(SOLID)

    SOLID SRP 단일 책임 원칙(Single responsibility principle) 하나의 클래스는 하나의 책임만 가져야 한다. 하나의 책임이라는 것은 모호하다. 클 수 있고, 작을 수 있다. 문맥과 상황에 따라 다르다. 중요한 기준은 변경이다. 변경이 있을 때 파급 효과가 적으면 단일 책임 원칙을 잘 따르는 것 OCP 개방-폐쇄 원칙(Open/closed principle) 소프트웨어 요소는 확장에는 허용하나 변경에는 불허해야 한다. 다형성 활용 인터페이스를 구현한 새로운 클래스를 하나 만들어서 새로운 기능을 구현 OCP 문제점 구현 객체를 변경하려면 클라이언트 코드를 변경해야한다. - 다형성을 사용했지만 OCP 원칙이 깨진다 → 객체를 생성하고, 연관관계를 맺어주는 별도의 조립, 설정자가 필..