JAVA 객체지향 디자인 패턴
도서명:JAVA 객체지향 디자인 패턴
저자/출판사:정인상,채흥석/한빛미디어
쪽수:504쪽
출판일:2014-04-02
ISBN:9788968480911
목차
CHAPTER 1 객체지향 모델링
__1.1 모델링
__1.2 UML
__1.3 클래스 다이어그램
____1.3.1 클래스
____1.3.2 관계
__체크포인트 해설
__연습문제
CHAPTER 2 객체지향 원리
__2.1 추상화
__2.2 캡슐화
__2.3 일반화 관계
____2.3.1 일반화는 또 다른 캡슐화
____2.3.2 일반화 관계와 위임
____2.3.3 집합론 관점으로 본 일반화 관계
__2.4 다형성
__2.5 피터 코드의 상속 규칙
__체크포인트 해설
__연습문제
CHAPTER 3 SOLID 원칙
__3.1 단일 책임 원칙
____3.1.1 책임의 의미
____3.1.2 변경
____3.1.3 책임 분리
____3.1.4 산탄총 수술
____3.1.5 관심지향 프로그래밍과 횡단 관심 문제
__3.2 개방-폐쇄 원칙
__3.3 리스코프 치환 원칙
__3.4 의존 역전 원칙
__3.5 인터페이스 분리 원칙
__체크포인트 해설
__연습문제
CHAPTER 4 디자인 패턴
__4.1 디자인 패턴의 이해
__4.2 GoF 디자인 패턴
__4.3 UML과 디자인 패턴
____4.3.1 컬레보레이션
____4.3.2 순차 다이어그램
____4.3.3 순차 다이어그램과 클래스 다이어그램의 관계
__체크포인트 해설
__연습문제
CHAPTER 5 스트래티지 패턴
__5.1 로봇 만들기
__5.2 문제점
____5.2.1 기존 로봇의 공격과 이동 방법을 수정하는 경우
____5.2.2 새로운 로봇에 공격/이동 방법을 추가/수정하는 경우
__5.3 해결책
__5.4 스트래티지 패턴
__연습문제
CHAPTER 6 싱글턴 패턴
__6.1 프린터 관리자 만들기
__6.2 문제점
__6.3 해결책
__6.4 싱글턴 패턴
__6.5 싱글턴 패턴과 정적 클래스
__연습문제
CHAPTER 7 스테이트 패턴
__7.1 상태 머신 다이어그램
__7.2 형광등 만들기
__7.3 문제점
__7.4 해결책
__7.5 스테이트 패턴
__연습문제
CHAPTER 8 커맨드 패턴
__8.1 만능 버튼 만들기
__8.2 문제점235
____8.2.1 버튼을 눌렀을 때 다른 기능을 실행하는 경우
____8.2.2 버튼을 누르는 동작에 따라 다른 기능을 실행하는 경우
__8.3 해결책
__8.4 커맨드 패턴
__연습문제
CHAPTER 9 옵서버 패턴
__9.1 여러 가지 방식으로 성적 출력하기
__9.2 문제점
____9.2.1 성적을 다른 형태로 출력하는 경우
____9.2.2 동시 혹은 순차적으로 성적을 출력하는 경우
__9.3 해결책
__9.4 옵서버 패턴
__연습문제
CHAPTER 10 데커레이터 패턴
__10.1 도로 표시 방법 조합하기
__10.2 문제점
____10.2.1 또다른 도로 표시 기능을 추가로 구현하는 경우
____10.2.2 여러 가지 추가 기능을 조합해야 하는 경우
__10.3 해결책
__10.4 데커레이터 패턴
__연습문제
CHAPTER 11 템플릿 메서드 패턴
__11.1 여러 회사의 모터 지원하기
__11.2 문제점
__11.3 해결책
__11.4 템플릿 메서드 패턴
__연습문제
CHAPTER 12 팩토리 메서드 패턴
__12.1 여러 가지 방식의 엘리베이터 스케줄링 방법 지원하기
__12.2 문제점
__12.3 해결책
__12.4 팩토리 메서드 패턴
__연습문제
CHAPTER 13 추상 팩토리 패턴
__13.1 엘리베이터 부품 업체 변경하기
__13.2 문제점348
____13.2.1 다른 제조 업체의 부품을 사용해야 하는 경우
____13.2.2 새로운 제조 업체의 부품을 지원해야 하는 경우
__13.3 해결책
__13.4 추상 팩토리 패턴
__연습문제
CHAPTER 14 컴퍼지트 패턴
__14.1 컴퓨터에 추가 장치 지원하기
__14.2 문제점
__14.3 해결책
__14.4 컴퍼지트 패턴
__연습문제
연습문제 정답 및 해설
찾아보기