확장메뉴
주요메뉴


소득공제
미리보기 공유하기

쉽게 배워 바로 써먹는 디자인 패턴

: 24가지 패턴으로 알아보는 객체지향의 원리

리뷰 총점7.5 리뷰 21건 | 판매지수 486
베스트
IT 모바일 top100 2주
명화를 담은 커피, 가을을 닮은 책 - 명화 드립백/명화 캡슐 커피/명화 내열 유리컵+드립백 세트/매거진 랙
[IT 기획전] IT, 모두의 교양
9월의 얼리리더 주목신간 : 웰컴 투 북월드 배지 증정
[대학생X취준생] 꼭 공부를 해야 할 상황이라면? 2학기, 공부할 결심!
박해선 저자의 머신러닝/딥러닝 패스
[단독]『혼자 공부하는 파이썬』 개정판 출간
내일은 개발자! 코딩테스트 대비 도서전
[단독] 에듀윌 IT 자격증 기획전 - 가장 빠른 합격출구 EXIT
소장가치 100% YES24 단독 판매 상품
YES24 트윈링 분철 : 인서트라벨/스티커 택1 증정
9월 전사
쇼핑혜택
1 2 3 4 5

품목정보

품목정보
출간일 2020년 10월 05일
쪽수, 무게, 크기 540쪽 | 183*235*35mm
ISBN13 9791162243404
ISBN10 1162243406

책소개 책소개 보이기/감추기

객체지향 프로그래밍 설계 원칙, 패턴을 알면 개발이 보인다
디자인 패턴은 어느 날 갑자기 생겨난 방식이 아니다. 객체지향 개발 과정에서 겪는 다양한 이슈를 종합해보면 서로 비슷한 유형의 문제다. 개발자들은 서로 자신의 경험을 바탕으로 문제를 해결해나갔다. GoF는 객체지향 설계 시 발생하는 문제점을 목록화하여 24가지 패턴으로 정리한다.

디자인 패턴의 개념과 동작 원리를 설명한다. 각 장을 24가지 패턴으로 구성하였으며 누구나 이해할 수 있는 쉬운 예제와 눈높이를 낮춘 설명은 디자인 패턴을 배우고 학습하는 데 유용하다. 객체지향을 이해하고 프레임워크를 학습하려는 개발자에게 유익한 가이드가 될 것이다

목차 목차 보이기/감추기

CHAPTER 0 디자인 패턴
0.1 패턴
0.2 소프트웨어 공학
0.3 설계 원칙
0.4 GoF
0.5 패턴의 요소
0.6 유지 보수
0.7 정리

[PART 1 생성 패턴 - 추상화를 통해 객체 생성하기]

CHAPTER 1 팩토리 패턴
1.1 클래스와 객체지향
1.2 의존성
1.3 의존성 주입
1.4 의존 관계의 문제점
1.5 팩토리 패턴
1.6 단순 팩토리
1.7 장점과 단점
1.8 관련 패턴
1.9 정리

CHAPTER 2 싱글턴 패턴
2.1 객체 생성
2.2 유일한 객체
2.3 싱글턴
2.4 싱글턴 설계
2.5 인스턴스 생성
2.6 정적 클래스
2.7 싱글턴 확장
2.8 자원 처리
2.9 관련 패턴
2.10 정리

CHAPTER 3 팩토리 메서드 패턴
3.1 추상화
3.2 패턴 확장
3.3 상위 클래스
3.4 하위 클래스
3.5 매개변수
3.6 관련 패턴
3.7 정리

CHAPTER 4 추상 팩토리 패턴
4.1 팩토리 메서드
4.2 그룹
4.3 팩토리 그룹
4.4 공장 추가
4.5 부품 추가 실습
4.6 패턴 결합
4.7 장점과 단점
4.8 관련 패턴
4.9 정리

CHAPTER 5 빌더 패턴
5.1 건축물
5.2 객체 실습
5.3 빌더
5.4 알고리즘
5.5 생성 요청
5.6 관련 패턴
5.7 정리

CHAPTER 6 프로토타입 패턴
6.1 생성
6.2 복사
6.3 프로토타입 패턴
6.4 특징
6.5 관련 패턴
6.6 정리

[PART 2 구조 패턴 - 상속과 합성을 사용해 객체 확장하기]

CHAPTER 7 어댑터 패턴
7.1 오래된 코드
7.2 잘못된 코드
7.3 어댑터
7.4 클래스 어댑터
7.5 객체 어댑터
7.6 설계
7.7 관련 패턴
7.8 정리

CHAPTER 8 브리지 패턴
8.1 복잡한 코드
8.2 상속
8.3 패턴 설계 1
8.4 패턴 설계 2
8.5 장점과 단점
8.6 관련 패턴
8.7 정리

CHAPTER 9 복합체 패턴
9.1 객체를 포함하는 객체
9.2 복합체의 구조적 특징
9.3 투명성을 활용한 동일한 설계
9.4 추상화를 통한 일반화 작업
9.5 Leaf
9.6 Composite
9.7 패턴 결합
9.8 적용 사례 1
9.9 적용 사례 2
9.10 적용 사례 3
9.11 장단점 및 결과
9.12 관련 패턴
9.13 정리

CHAPTER 10 장식자 패턴
10.1 기능 추가
10.2 조건 추가
10.3 확장
10.4 객체에 추가 장식하기
10.5 기본 실습
10.6 장단점 및 결과
10.7 관련 패턴
10.8 정리

CHAPTER 11 파사드 패턴
11.1 협업을 위한 분리 작업
11.2 파사드 패턴을 응용한 API
11.3 파사드를 이용한 단순화
11.4 최소 지식 원칙
11.5 기본 실습
11.6 파사드 패턴의 효과
11.7 관련 패턴
11.8 정리

CHAPTER 12 플라이웨이트 패턴
12.1 메모리 자원
12.2 자원 공유
12.3 상태 구분
12.4 패턴 실습
12.5 관련 패턴
12.6 정리

CHAPTER 13 프록시 패턴
13.1 객체를 대행하는 프록시
13.2 객체 가로채기
13.3 객체 분리
13.4 프록시 생성
13.5 행위를 처리하는 핸들러
13.6 동적 프록시
13.7 원격 프록시
13.8 가상 프록시
13.9 보호용 프록시
13.10 스마트 참조자
13.11 정리

[PART 3 행동 패턴 - 복합 구조로 객체의 책임 분산하기]

CHAPTER 14 반복자 패턴
14.1 객체의 집합
14.2 배열
14.3 집합체
14.4 반복자
14.5 작업 분할
14.6 관련 패턴
14.7 정리

CHAPTER 15 명령 패턴
15.1 명령 처리
15.2 명령 패턴의 구성과 특징
15.3 인터페이스
15.4 명령
15.5 리시버
15.6 인보커
15.7 클라이언트
15.8 undo
15.9 장단점
15.10 관련 패턴
15.11 정리

CHAPTER 16 방문자 패턴
16.1 데이터 처리
16.2 분리
16.3 원소 객체
16.4 방문자
16.5 반복자
16.6 관련 패턴
16.7 정리

CHAPTER 17 체인 패턴
17.1 제어문
17.2 동작조건
17.3 행동 분리
17.4 사슬 연결
17.5 체인 패턴
17.6 미들웨어
17.7 관련 패턴
17.8 정리

CHAPTER 18 감시자 패턴
18.1 감시자
18.2 구성
18.3 관계
18.4 주체
18.5 감시자
18.6 동작 실습
18.7 활용
18.8 관련 패턴
18.9 정리

CHAPTER 19 중재자 패턴
19.1 중재
19.2 중재자
19.3 동료 객체
19.4 기본 실습
19.5 관련 패턴
19.6 정리

CHAPTER 20 상태 패턴
20.1 상태란
20.2 상태 처리
20.3 패턴 구현
20.4 객체 생성
20.5 상태 전환
20.6 실습
20.7 효과
20.8 패턴 유사성
20.9 적용 사례
20.10 정리

CHAPTER 21 메멘토 패턴
21.1 상태 저장
21.2 캡슐화
21.3 메멘토
21.4 Originator 클래스
21.5 CareTaker 클래스
21.6 관련 패턴
21.7 정리

CHAPTER 22 템플릿 메서드 패턴
22.1 프로그램의 구조
22.2 템플릿
22.3 일반화
22.4 추상화
22.5 템플릿 메서드
22.6 의존성 디자인
22.7 관련 패턴
22.8 정리

CHAPTER 23 전략 패턴
23.1 문제
23.2 알고리즘
23.3 분리
23.4 인터페이스
23.5 전략
23.6 전략 실행
23.7 적용 사례
23.8 관련 패턴
23.9 정리

CHAPTER 24 인터프리터 패턴
24.1 언어
24.2 언어 설계
24.3 처리계
24.4 중간 코드
24.5 해석
24.6 클래스 표현
24.7 관련 패턴
24.8 정리

저자 소개 (1명)

출판사 리뷰 출판사 리뷰 보이기/감추기

이 책에서 다루는 내용
● 쉬운 예제로 설명하는 24가지 디자인 패턴
● 유지보수를 고려한 설계 방법론
● 최고의 성능을 위한 개발 방법론


객체지향 개념
이 책은 객체지향 디자인 패턴 카탈로그를 다룬다. 객체지향 개념과 설계 방법을 이해한다면 디자인 패턴을 학습하기가 훨씬 수월하다. 학습에 필요한 디자인 패턴의 기초 개념과 원리를 같이 설명한다

디자인 패턴 카탈로그
패턴 카탈로그에서 꼭 필요한 부분을 선별해 우선적으로 학습할 수 있도록 구성했다. 패턴 각각의 독립적인 특성에 맞게 집필했으며, 패턴들을 쉽게 이해할 수 있도록 주요 내용을 반복 설명한다. 하지만 동일한 객체지향 개념이라도 패턴에서 의도하는 방법에 따라 다른 시각으로 바라볼 수 있으므로 찬찬히 읽어보기를 권한다.

학습 목적
특정 언어에 종속되지 않고 디자인 패턴의 개념과 동작 원리 위주로 학습할 수 있도록 구성했다. 디자인 패턴을 처음 접하는 독자도 쉽게 이해할 수 있도록 간단한 코드와 그림으로 설명한다. 객체지향 설명은 일반적인 도형을 이용해 더욱더 쉽게 이해할 수 있게 구성했다.

회원리뷰 (21건) 리뷰 총점7.5

혜택 및 유의사항?
구매 이제 프로그래밍 문법 좀 할 줄 아는 것 같은데, 뭘 해야 하나? 내용 평점5점   편집/디자인 평점5점 l******1 | 2022.04.02 | 추천0 | 댓글0 리뷰제목
쉽게 배워 바로 써먹는 디자인 패턴 처음 개발자는 어떻게 될 수 있을까를 생각해본다면, 당연히 프로그래밍 언어를 익히는 것이 1순위 일 것이다. 기본적인 변수의 타입을 시작으로 수많은 프로그래밍의 기본적인 지식을 익혔다면 과연 다음 단계는 무엇일까? 우리가 외국어를 배울 때를 생각해보면, 프로그래밍 언어에서의 문법은 외국어의 문법과 기능적으로는 비슷하다고 볼 수 있;
리뷰제목
쉽게 배워 바로 써먹는 디자인 패턴

처음 개발자는 어떻게 될 수 있을까를 생각해본다면, 당연히 프로그래밍 언어를 익히는 것이 1순위 일 것이다. 기본적인 변수의 타입을 시작으로 수많은 프로그래밍의 기본적인 지식을 익혔다면 과연 다음 단계는 무엇일까? 우리가 외국어를 배울 때를 생각해보면, 프로그래밍 언어에서의 문법은 외국어의 문법과 기능적으로는 비슷하다고 볼 수 있다. 사람과 의사소통을 위해선 공통된 약속인 알파벳으로 시작해서 의미를 제대로 표현할 수 있도록 단어를 나열하는 법 등등을 알아야지만 하나의 언어를 활용할 준비가 되었다고 볼 수 있다(물론 사람이라는 인터프리터, 해석가, 는 매우 유능하기에 적당히 틀려도 잘 알아듣기 때문에 완벽할 필요는 없다.) 문법만 다 익히면 과연 언어를 유창하게 활용할 수 있을까?

구글에서 영어 공부에 대한 검색 이미지 결과

구글에서 "영어 공부"라고 검색을 해보면 수 많은 검색 결과와 더불어 연관 검색으로는 "영어 표현", "영어자막", "영어문장", "영어회화"와 같이 실제 외국인들이 사용하는 영어를 따라 해 볼 수 있는 방식의 공부법이 많이 나오게 된다. 즉, 언어를 유창하게 하기 위해선 자주 사용되는 패턴을 익혀 내가 원하는 상황에 적절히 바꿔가며 사용하는 것이 나름의 방법이라고 볼 수 있다. 이러한 상황은 개발자들에게도 동일하게 적용이 된다. 혼자 개발하는 자그마한 프로젝트들은 크게 신경 쓰지 않아도 된다. 하지만, 카카오톡이나 배달의 민족, 쿠팡과 같이 수많은 사람들이 사용하는 복잡한 시스템을 갖는 프로젝트의 경우에는 유창한 프로그래밍 실력이 필요하게 된다. 이를 위해선 프로그래밍의 고수들이 제안해 놓은 디자인 패턴을 익혀 원하는 상황에 따라 유연하게 적용한다면 프로그래밍을 유창하게 잘해 보일 수 있지 않을까?

디자인 패턴에 대한 책들은 시중에 상당히 많이 나와 있지만 어디서부터 시작하면 좋을지 고민을 많이 해 보았다. <GoF의 디자인 패턴>, <모던 C++ 디자인 패턴>과 같이 바이블 같은 책들 부터 시작해서 최근에 한빛미디어에서 나온 <헤드 퍼스트 디자인 패턴>까지 하나하나 읽어보기엔 방대한 양의 도서가 있어 지인에게 추천받은 <쉽게 배워 바로 써먹는 디자인 패턴>으로 처음 접근해보기로 했다. 이 책의 경우 주로 백엔드에서 많이 사용한다고 알고 있는 php라는 프로그래밍 언어를 베이스로 디자인 패턴 실습 예제들로 구성되어 있다. 인공지능과 자율주행 필드에서 일하고 있는 나에겐 상당히 낯선 영역의 언어였지만, 그 이유로 이 책을 선택하게 되었다. 아무래도 낯선 언어를 베이스로 한 코드를 보며 나의 필드에 맞게 해석하는 연습을 하는 것이 기초를 익히기엔 더 좋아 보였기 때문이다.

책의 구성은 카탈로그 형식으로 24개의 디자인 패턴들을 생성/구조/행동 패턴이라는 세개의 카테고리로 먼저 구분해 놓고, 하위 패턴들을 열거해 놓았다. 각각의 패턴들에 대한 관계도도 언급하여 큰 그림을 보며 이해할 수 있었다. 또한 패턴이 등장하게 된 문제 상황으로 시작해 왜 이 패턴이 필요한지 충분히 납득이 갔고, 단계적으로 구현해 나가는 것을 따라 쳐보며 체득하기 좋은 구성으로 되어 있다.

<쉽게 배워 바로 써먹는 디자인 패턴>은 기본적으로 객체 지향 프로그래밍을 베이스로한 프로그래밍 언어의 기초적인 문법을 충분히 익힌 개발자가 그다음 단계로 넘어가고자 한다면 읽어보기 좋은 책이라 생각이 된다. 카탈로그 형식으로 되어 있지만, 각 패턴의 열거된 순서는 점진적으로 확장되기 때문에 첫 장부터 시작해 차근차근 실력을 키우기에도 좋다. 어느 정도 공부가 끝난 경우라면 익숙하지 않은 패턴에 대해선 필요한 부분만 찾아가면서 읽을 수 도 있다. 다만 php라는 낯선 언어가 필드에서 바로 적용해 보기엔 어렵겠지만, 디자인 패턴의 본질은 언어에 있는 것이 아니기에 스터디의 목적을 둔다면 충분히 유용하게 활용할 수 있을 것이다.

원본 리뷰

댓글 0 이 리뷰가 도움이 되었나요? 공감 0
쉽게 배워 바로 써먹는 디자인 패턴 내용 평점3점   편집/디자인 평점2점 j*******a | 2021.09.26 | 추천0 | 댓글0 리뷰제목
오프라인, 온라인 서점에서 IT 관련 도서를 조금만 훑어봐도 객체지향, 디자인패턴에 관한 무수히 많은 책들이 있습니다. 가장 유명한 GoF의 책부터 시작하여, OOP의 개념과 디자인패턴을 특정언어로 다루는 도서들이 많습니다.    결론부터 말하자면, 개인적으로 이 책을 읽은 후 서점에 있는 수 많은 책들 중 강하게 누군가에 추천할만한 책이라고 생각하진 않습니다. (개;
리뷰제목

오프라인, 온라인 서점에서 IT 관련 도서를 조금만 훑어봐도 객체지향, 디자인패턴에 관한 무수히 많은 책들이 있습니다. 가장 유명한 GoF의 책부터 시작하여, OOP의 개념과 디자인패턴을 특정언어로 다루는 도서들이 많습니다. 

 

결론부터 말하자면, 개인적으로 이 책을 읽은 후 서점에 있는 수 많은 책들 중 강하게 누군가에 추천할만한 책이라고 생각하진 않습니다. (개인적인 의견입니다.)

 

많은 책들이 Java, C++, C# 등의 언어로 씌어져 있으나 이 책은 특이하게 PHP로 예제가 작성되어 있습니다. 그 점은 눈에 띄게 특이하지만 디자인패턴은 특정 언어에 종속되는 기법이 아니기에 이 책의 큰 메리트라고 보이진 않습니다. 

 

구성이 좋다?, 내용이 좋다? 라고 말하기에는 조금 주저하게 됩니다. 다른 출판된 많은 책들도 유사한 책들이 많기에 그 책들과 비교했을 때도 큰 장점이 뭘까 싶습니다.

 

또한 가장 힘들었던것은 오탈자 입니다. 개인의 성향이기도 하지만 오탈자를 대수롭지 않게 넘어가는 분들도 있겠지만 개인적으로 저는 오탈자로 인해 책에 집중도가 많이 떨어지게 되었습니다. 

 

솔직히 추천하고 싶지는 않습니다. 

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

댓글 0 이 리뷰가 도움이 되었나요? 공감 0
포토리뷰 쉽게 배워 바로 써먹는 디자인 패턴 리뷰 내용 평점4점   편집/디자인 평점4점 j* | 2021.09.22 | 추천0 | 댓글0 리뷰제목
프로그래밍을 공부하는 사람들은 디자인 패턴이란 말을 많이 들어보셨을 겁니다. 한빛미디어에서 디자인 패턴 도서가 나왔습니다. php로 설명이 되어 있습니다. 프로그래밍 언어가 php라 헷갈리거나 어려운 부분은 없습니다.   초보자가 공부하기에 어려움이 없습니다. 그림과 예시등이 풍부하게 들어가 있습니다.   간혹 오타등이 있는 부분이 아쉬움으로 남습니다. &;
리뷰제목

프로그래밍을 공부하는 사람들은 디자인 패턴이란 말을 많이 들어보셨을 겁니다.

한빛미디어에서 디자인 패턴 도서가 나왔습니다. php로 설명이 되어 있습니다. 프로그래밍 언어가 php라 헷갈리거나 어려운 부분은 없습니다.

 

초보자가 공부하기에 어려움이 없습니다. 그림과 예시등이 풍부하게 들어가 있습니다.

 

간혹 오타등이 있는 부분이 아쉬움으로 남습니다.

 

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.





 

댓글 0 이 리뷰가 도움이 되었나요? 공감 0
  •  쿠폰은 결제 시 적용해 주세요.
1   31,500
뒤로 앞으로 맨위로 aniAlarm