객체지향의 원칙 OCP 와 DIP에 대해 *OCP 개방-폐쇄 원칙 소프트웨어 요소는 확장에는 열려있으나 변경에는 닫혀있어야 한다. 다형성을 통해 가능하다. 인터페이스를 구현한 새로운 클래스를 하나 만들어 새로운 기능을 구현 지금까지 배운 역할과 구현의 분리 DIP 의존관계 역전 원칙 프로그래머는 "추상화에 의존해야지, 구체화에 의존하면 안된다." 의존성 주입은 이 원칙을 따르는 방법 중 하나 구현 클래스에 의존하지 말고, 인터페이스에 의존하라는 뜻 역할에 의존하게 해야 한다는 것과 같다. 객체 세상도 클라이언트가 인터페이스에 의존해야 유연하게 구현체를 변경할 수 있다. 구현체에 의존하게 되면 변경이 아주 어려워진다. 공부는 인풋이 있으면 반드시 아웃풋이 있어야한다. 구체적인 코드를 구현해보며 알아보자. ..