- 'new' 연산자가 눈에 띈다면 '구상'이라는 용어를 떠올려주세요. - 변화하는 무언가 때문에 new를 조심해서 사용해야 합니다. - 인터페이스를 바탕으로 만들어진 코드는 어떤 클래스든 특정 인터페이스만 구현하면 사용할 수 있다. 이것은 '다형성' 덕분이다. - 구상클래스를 바탕으로 만들어진 코드는 구상 클래스가 추가될때마다 코드를 고쳐야 하므라 '변경에 닫혀 있는' 코드가 된다. - 바뀌는 부분을 찾아내서 바꾸지 않는 부분과 분리해야 한다. Pizza orderPizza(String type) { Pizza pizza; if (type.equals("chesse")) { // 변경되는 부분 ... } pizza.prepare(); // 변경되지 않는 부분 ... } - 변경 되는 부분은 피자를 만드..