9장1 9장 - 유연한 설계 개요 이번 장에서는 8장에서 소개했던 기법들을 원칙이라는 관점에서 설명합니다. 개방-폐쇄 원칙(Open-Closed Principle, OCP) 소프트웨어 개체(클래스, 모듈, 함수 등)는 확장에 대해 열려 있어야 하고, 수정에 대해 닫혀 있어야 한다는 원칙입니다. '확장에 대해 열려 있다는 의미'는 앱의 요구사항이 변경될 때 이 변경에 맞게 새 동작을 추가해서 앱의 기능을 확장할 수 있다는 의미이며, '수정에 대해 닫혀 있다는 의미'는 기존의 코드를 수정하지 않고도 앱의 동작을 추가하거나 변경할 수 있다는 의미입니다. 어떻게 기존 코드를 수정하지 않고도 새로운 동작을 추가할 수 있을까? 1. 컴파일타임 의존성을 고정시키고 런타임 의존성을 변경하라 런타임 의존성은 실행 시에 협력에 참여하는 객체들 사이의.. 2023. 7. 24. 이전 1 다음