본문 바로가기
728x90
반응형

다형성3

[디자인패턴] 템플릿 메서드(Template Method) 패턴 이해하기 안녕하세요. J4J입니다. 이번 포스팅은 템플릿 메서드 (Template Method) 패턴에 대해 적어보는 시간을 가져보려고 합니다.   Template Method 패턴이란? template method 패턴은 상위 클래스에서 공통으로 사용되는 템플릿을 제공하여 하위 클래스에서 구체적인 단계를 재 정의할 수 있도록 도와줍니다. template method의 기본 구조는 다음과 같습니다.    구조를 보시면 상위 클래스에서는 공통으로 재 사용될 수 있는 메서드 (= Template Method)를 제공하고 있습니다. 그리고 하위 클래스 별로 상세 로직을 정의할 수 있도록 추상 메서드 (= Primitive Method)를 제공하고 있습니다.    개인적으로 template method는 구조만 확인하더.. 2024. 4. 22.
[객체지향설계] SOLID 설계 원칙 (5) - DIP (의존성 역전 원칙) 안녕하세요. J4J입니다. 이번 포스팅은 solid 설계 원칙 마지막인 dip (의존성 역전 원칙)에 대해 적어보는 시간을 가져보려고 합니다. 이전 글 [객체지향설계] SOLID 설계 원칙 (1) - SRP (단일 책임 원칙) [객체지향설계] SOLID 설계 원칙 (2) - OCP (개방 폐쇄 원칙) [객체지향설계] SOLID 설계 원칙 (3) - LSP (리스코프 치환 원칙) [객체지향설계] SOLID 설계 원칙 (4) - ISP (인터페이스 분리 원칙) DIP (의존성 역전 원칙) 란? solid 설계 원칙에서 dip가 의미하는 것은 고수준 모듈은 저수준 모듈에 의존하지 않고 추상화에 의존해야 된다는 것을 말합니다. 여기서 고수준 모듈과 저수준 모듈은 무엇이며, 추상화에 의존해야 된다는 것은 또 무엇.. 2024. 3. 22.
[객체지향설계] SOLID 설계 원칙 (3) - LSP (리스코프 치환 원칙) 안녕하세요. J4J입니다. 이번 포스팅은 solid 설계 원칙 세 번째인 lsp (리스코프 치환 원칙)에 대해 적어보는 시간을 가져보려고 합니다. 이전 글 [객체지향설계] SOLID 설계 원칙 (1) - SRP (단일 책임 원칙) [객체지향설계] SOLID 설계 원칙 (2) - OCP (개방 폐쇄 원칙) LSP (리스코프 치환 원칙) 란? solid 설계 원칙에서 lsp가 의미하는 것은 자료형 A가 자료형 B의 서브 타입이라면 다른 수정 사항 없이 A를 B로 대체할 수 있어야 되는 것을 말합니다. 즉, 자바 관점에서 얘기를 해보면 A 클래스가 B의 클래스에 상속되어 있는 관계일 때 다른 소스 코드의 변경 없이 A를 B로 변경했을 때 동일한 동작을 수행해야 된다는 것입니다. 자바 관점에서 lsp는 결국 상.. 2024. 3. 9.
728x90
반응형