반응형 OCP 다운캐스팅1 OCP 원칙을 지키지 못할 상황일때 OCP: 소프트웨어 요소는 확장에는 열려 있으나 변경에는 닫혀 있어야 한다. ocp는 로머트마틴이 정한 객체지향 SOLID 원칙에서 O 부분에 해당하는 5가지 중 핵심원칙이다. 객체지향 언어를 처음 배울 때 쉬운 예로 어떠한 클래스 객체를 사물에 대입시켜 그 사물에 큰 주제로 피라미드 형식으로 상속받아 뻗어 나가는 형태를 취하는 식으로 배운다. 예를 들어 TV라는 추상적 사물이 있다면 TV에 속한 스마트 TV, 아날로그 TV 등 TV라는 구상체에 존속되는 실질적인 구현체를 사용하게 된다. 여기서 Java 기준으로 TV가 추상화 클래스이라는 것을 알 수 있다. 추상화라는 개념을 아는 개발자는 이제 새로운 TV 제품의 기능을 설계할 때 TV 추상화 클래스를 상속하는 하위 클래스를 만들어 해당 하위 클래스에 .. 2023. 3. 22. 이전 1 다음