Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |
Tags
- 백준 14391
- Math.floor()
- 네트워크
- 프로그래머스 네트워크 java
- java
- 백준 4375
- 프로그래머스 숫자의 표현 java
- 프로그래머스 옹알이 java
- Arrays
- 프로그래머스 도둑질 java
- 백준 17425
- 자바
- 0으로 채우기
- 백준 16927
- 백준 16935
- java 내림
- 백준 15661
- 알고리즘
- 코딩테스트
- time complexity
- Codility
- Math.ceil()
- java 올림
- Algorithm
- sort
- 백준 18290
- java 반올림
- 백준 11723
- 프로그래머스 연속된 수의 합 java
- mysql
Archives
- Today
- Total
취미처럼
[DP] DIP 본문
DIP ( Dependency Inversion Principle ) - 의존 역전 원칙
객체들이 서로 정보를 주고 받을 때 의존 관계가 형성되는데, 이 때 객체들은 나름대로의 원칙을 갖고 정보를 주고 받아야 한다는 설계 원칙이다.
여기서 나름대로의 원칙이란, 추상성이 낮은 클래스보다 추상성이 높은 클래스와 의존 관계를 맺어야 한다는 것을 의미한다.
일반적으로 인터페이스를 활용하면 이 원칙을 준수할 수 있게 된다( 캡슐화 )

Client 객체는 Cat, Dog, Bird의 crying() 메서드에 직접 접근하지 않고, Animal 인터페이스의 crying() 메서드를 호출함으로써 DIP를 만족할 수 있습니다.
'Design Pattern' 카테고리의 다른 글
[DP] 팩토리 패턴 (0) | 2021.03.19 |
---|---|
[DP] 싱글톤 패턴 (0) | 2021.03.19 |
[DP] ISP (0) | 2021.03.19 |
[DP] LSP (0) | 2021.03.18 |
[DP] OCP (0) | 2021.03.18 |
Comments