소프트웨어 요소는 ( ㉠ )에는 열려 있어야 하고, ( ㉡ )에는 닫혀 있어야 한다. 즉, 새 기능 추가 시 기존 코드를 수정하지 않고 추가만으로 가능해야 한다. — 해당하는 설계 원칙은?