일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- 문제풀이
- java
- 소프티어
- 데이터베이스
- 자바
- 백준 알고리즘
- 코딩교육봉사
- 코딩봉사
- 회고
- 프로그래머스
- 코틀린
- 시나공
- python
- 백준
- 알고리즘
- 1과목
- softeer
- SQL
- 정보처리산업기사
- BFS
- 파이썬
- C++
- 스프링
- programmers
- 공부일지
- 백준알고리즘
- CJ UNIT
- SW봉사
- MYSQL
- kotlin
Archives
- Today
- Total
목록스트레이트지패턴 (1)
JIE0025

✅ 개요 애플리케이션의 요구사항은 계속해서 변한다. 오리가 수영하고, 소리를 낼 수 있다는 슈퍼클래스를 만들고 오리인형, 오리A, 오리B가 슈퍼클래스를 상속받도록 했다고 가정해보자. 다음 요구사항이 들어왔다. 오리가 날 수 있게 만들어줘 ✍️ 상속을 사용하는것은 좋지 못할 수 있다. 슈퍼클래스에 Fly()를 추가하는 방법이 있다. 그러나 오리 인형이 를 상속받고 있기 때문에 사용할 수 없다. (오리인형은 수영할 수 있지만, 날 수 없다.) ✍️ 인터페이스를 사용할 경우는? Flyable이라는 인터페이스를 만들면 날아야만 하는 오리들에 대해서만 구현해주면 된다. 그러나 코드 중복을 무시할 수 없고, 날 수 있는 오리의 종류가 100가지가 넘어가게 되면 코드를 전부 고쳐주어야한다. 재사용에 유연한 코드를 작..
Application/Java, Kotlin
2023. 8. 13. 17:34