확장에 대해서는 열려 있어야 하고, 변경에 관련해서는 닫혀 있어야 함
기존 코드를 변경하지 않고 확장할 수 있도록 만들어야 함
변경되지 않을 부분(닫힌 부분)과 변경될 부분(열린 부분)을 분리
다형성 사용 door.open();
door.open();