최근본상품
10%
21,600원
24,000원
무료배송
모레(수) 7/15 도착 예정
적립
최대 1,080원· 쿠페이 머니 결제시
혜택보기
PC에서도 간편한 결제
쿠페이머니
카드
계좌이체
쿠페이머니
카드
계좌이체- 구판 ISBN: 상세내용 참조
- 시리즈명: 상세내용 참조
- 플랫폼: 상세내용 참조
- 프로그래밍 언어종류: 상세내용 참조
- 독자레벨: 상세내용 참조
- 쿠팡상품번호: 1744957739 - 2971212635
필수 표기 정보
| 도서명 | 객체지향 사고 프로세스 : 프로그래밍보다 먼저 익혀야 하는 생각의 기술 | 저자, 출판사 | 맷 와이스펠드 저/박진수 역, 제이펍 |
| 크기(파일의 용량) | 188*245 | 쪽수 | 296 |
| 제품 구성 | 상세페이지 참조 | 발행일 | 2020년 07월 03일 |
필수 표기 정보 더보기더보기
판매자가 현금거래를 요구하면 거부하시고 즉시 사기 거래 신고센터 (1670-9832)에 신고하시기 바랍니다.
상품상세
상품소개
원리와 개념 중심으로 익히는 객체지향 사고방식!
『객체지향 사고 프로세스』는 객체지향 프로그래밍을 기술뿐 아니라 개념 수준, 더 나아가서는 철학 수준에서부터 다룬다. 또한, 프로그래머들이 객체지향의 탄탄한 이론적 기반을 다지고, 객체지향적으로 생각해나가는 과정을 제시한다. 1999년 초판이 나온 이후 20년에 걸쳐 다양한 내용과 새로운 기술을 보강하여 5판까지 출간된 장수 스테디셀러이다. 자신의 프로그래밍 스킬과 상관없이 객체지향 개념이 딱딱하거나 어렵게 느껴지는 모든 분에게 필요한 책이다.
『객체지향 사고 프로세스』는 객체지향 프로그래밍을 기술뿐 아니라 개념 수준, 더 나아가서는 철학 수준에서부터 다룬다. 또한, 프로그래머들이 객체지향의 탄탄한 이론적 기반을 다지고, 객체지향적으로 생각해나가는 과정을 제시한다. 1999년 초판이 나온 이후 20년에 걸쳐 다양한 내용과 새로운 기술을 보강하여 5판까지 출간된 장수 스테디셀러이다. 자신의 프로그래밍 스킬과 상관없이 객체지향 개념이 딱딱하거나 어렵게 느껴지는 모든 분에게 필요한 책이다.
목차
CHAPTER 1 객체지향 개념 소개 1
기본 개념 2
객체와 레거시 시스템 3
객체지향 프로그래밍과 절차적 프로그래밍 4
절차적 개발에서 객체지향적 개발로 옮겨 타기 9
객체란 정확히 무엇일까? 10
클래스란 정확히 무엇을 일컫는 말인가? 16
시각화 도구로 클래스 다이어그램 사용하기 20
캡슐화 및 데이터 은닉 20
상속 25
다형성 29
합성 33
결론 35
CHAPTER 2 객체라는 관점에서 생각하는 방법 37
인터페이스와 구현부의 차이점 이해 39
인터페이스 설계 시 추상적으로 생각해 보기 47
가능한 한 사용자 인터페이스를 적게 제공하기 49
결론 54
참고 문헌 54
CHAPTER 3 그 밖의 객체지향 개념들 55
생성자에 관하여 55
오류 처리 64
범위의 중요성 69
연산자 오버로딩 75
다중 상속 77
객체 연산 78
결론 80
참고문헌 80
CHAPTER 4 클래스 해부하기 81
클래스의 이름 82
속성 84
생성자 86
접근자 88
공개 인터페이스 메서드 91
비공개 구현부 메서드 92
결론 93
참고문헌 93
CHAPTER 5 클래스 설계 지침 95
현실 세계 시스템 모델링 95
공개 인터페이스 식별 97
튼튼한 생성자나 소멸자가 되게 설계하기 99
클래스에 대한 오류 처리 설계 100
재사용을 고려한 설계 102
확장성을 고려한 설계 102
유지보수를 고려한 설계 106
객체 지속성 사용 110
결론 111
참고문헌 112
CHAPTER 6 객체를 사용해 설계하기 113
설계 지침 114
객체 래퍼 121
결론 128
참고문헌 129
CHAPTER 7 상속과 합성에 익숙해지기 131
객체 재사용 132
상속 133
캡슐화가 객체지향의 기본이 되는 이유 143
결론 153
참고문헌 154
CHAPTER 8 프레임워크 및 재사용: 인터페이스와 추상 클래스를 사용해 설계하기 155
코드: 재사용할 것인가, 사용하지 않을 것인가? 155
프레임워크란? 156
계약이란? 158
전자상거래 사례 173
결론 182
참고문헌 183
CHAPTER 9 객체 구축과 객체지향 설계 185
단계적으로 구축하기 187
합성 유형 190
의존체 회피하기 193
카디널리티 195
종합: 예제 199
결론 200
참고문헌 200
CHAPTER 10 디자인 패턴 201
디자인 패턴이 필요한 이유 202
스몰토크의 모델/뷰/컨트롤러 204
디자인 패턴의 종류 206
안티패턴 216
결론 218
참고문헌 218
CHAPTER 11 의존적이거나 경직된 클래스가 되지 않게 하기 221
합성 대 상속, 그리고 의존성 주입 224
결론 232
참고문헌 233
CHAPTER 12 객체지향 설계의 SOLID 원칙 235
객체지향 설계의 SOLID 원칙 237
결론 255
참고문헌 255
찾아보기 257
기본 개념 2
객체와 레거시 시스템 3
객체지향 프로그래밍과 절차적 프로그래밍 4
절차적 개발에서 객체지향적 개발로 옮겨 타기 9
객체란 정확히 무엇일까? 10
클래스란 정확히 무엇을 일컫는 말인가? 16
시각화 도구로 클래스 다이어그램 사용하기 20
캡슐화 및 데이터 은닉 20
상속 25
다형성 29
합성 33
결론 35
CHAPTER 2 객체라는 관점에서 생각하는 방법 37
인터페이스와 구현부의 차이점 이해 39
인터페이스 설계 시 추상적으로 생각해 보기 47
가능한 한 사용자 인터페이스를 적게 제공하기 49
결론 54
참고 문헌 54
CHAPTER 3 그 밖의 객체지향 개념들 55
생성자에 관하여 55
오류 처리 64
범위의 중요성 69
연산자 오버로딩 75
다중 상속 77
객체 연산 78
결론 80
참고문헌 80
CHAPTER 4 클래스 해부하기 81
클래스의 이름 82
속성 84
생성자 86
접근자 88
공개 인터페이스 메서드 91
비공개 구현부 메서드 92
결론 93
참고문헌 93
CHAPTER 5 클래스 설계 지침 95
현실 세계 시스템 모델링 95
공개 인터페이스 식별 97
튼튼한 생성자나 소멸자가 되게 설계하기 99
클래스에 대한 오류 처리 설계 100
재사용을 고려한 설계 102
확장성을 고려한 설계 102
유지보수를 고려한 설계 106
객체 지속성 사용 110
결론 111
참고문헌 112
CHAPTER 6 객체를 사용해 설계하기 113
설계 지침 114
객체 래퍼 121
결론 128
참고문헌 129
CHAPTER 7 상속과 합성에 익숙해지기 131
객체 재사용 132
상속 133
캡슐화가 객체지향의 기본이 되는 이유 143
결론 153
참고문헌 154
CHAPTER 8 프레임워크 및 재사용: 인터페이스와 추상 클래스를 사용해 설계하기 155
코드: 재사용할 것인가, 사용하지 않을 것인가? 155
프레임워크란? 156
계약이란? 158
전자상거래 사례 173
결론 182
참고문헌 183
CHAPTER 9 객체 구축과 객체지향 설계 185
단계적으로 구축하기 187
합성 유형 190
의존체 회피하기 193
카디널리티 195
종합: 예제 199
결론 200
참고문헌 200
CHAPTER 10 디자인 패턴 201
디자인 패턴이 필요한 이유 202
스몰토크의 모델/뷰/컨트롤러 204
디자인 패턴의 종류 206
안티패턴 216
결론 218
참고문헌 218
CHAPTER 11 의존적이거나 경직된 클래스가 되지 않게 하기 221
합성 대 상속, 그리고 의존성 주입 224
결론 232
참고문헌 233
CHAPTER 12 객체지향 설계의 SOLID 원칙 235
객체지향 설계의 SOLID 원칙 237
결론 255
참고문헌 255
찾아보기 257
저자 소개
맷 와이스펠드
Matt Weisfeld 오하이오주 클리블랜드에 있는 Cuyahoga Community College(Tri-C)의 경영 기술 분야 부교수다. 기술위원회 소속 위원으로서 프로그래밍, 웹 개발, 사업 개발 등에 집중하고 있다. Tri-C에 오기 전에는 20년간 정보기술 업계에서 소프트웨어 개발, 프로젝트 관리, 소규모 사업 관리, 사내 교육 및 시간 강사로서 경험을 쌓았다. 또한, 컴퓨터과학 석사(MS)와 프로젝트 관리 분야 경영학 석사(MBA)를 취득하였다. 《The Object-Oriented Thought Process》 이외에도 두 권의 컴퓨터 관련 도서를 집필하였고, informit.com, developer.com, 《Dr. Dobb’s Journal》, 《The C/C++ Users Journal》, 《Software Development Magazine》, 《Java Report》 등의 잡지와 저널 그리고 국제 저널인 《Project Management》에 논문을 기고하였다.박진수
다양한 정보기술 분야 경력과 저술/번역 경험을 바탕으로 IT 융·복합 사업을 꿈꾸는, 1인 회사 ‘리율’의 대표다. 옮긴 책으로는 《사물인터넷을 위한 인공지능》 《실전! GAN 프로젝트》 《실전 예제로 배우는 GAN》 《전문가를 위한 머신러닝 솔루션》 《딥러닝 모델 설계를 떠받치는 기술》 《따라 하면서 배우는 유니티 ML-Agents》 《검색을 위한 딥러닝》, 《파이썬으로 배우는 응용 텍스트 분석》, 《R로 배우는 텍스트 마이닝》, 《케라스 창시자의 딥러닝 with R》, 《모두를 위한 실용 전자공학》, 《해킹 일렉트로닉스》, 《ggplot2》 등이 있다.책 속으로
필자는 객체지향 프로그래밍과 구조적 프로그래밍은 서로 경쟁하는 관계에 있는 게 아니라고 생각했기 때문에 늘 그러한 패러다임이 이상하다고 생각했다. 객체들은 구조적 코드와 잘 통합되므로 보완적이다. 지금도 종종 필자는 ‘구조적 프로그래밍을 하는가, 아니면 객체지향 프로그래밍을 하는가?’라는 질문을 받는다. 망설임 없이 필자는 양쪽 방식을 다 쓴다고 대답할 것이다. --- p.3 다중 상속이라는 말을 통해서 알 수 있듯이, 다중 상속을 통해, 어떤 한 가지 클래스는 자기 자신이 아닌 그 밖의 클래스들 중 두 개 이상으로부터 상속을 받을 수 있다. 실제로도 다중 상속이 좋은 방안인 것처럼 보인다. 객체로 실제 세계를 본떠야 하는가, 아니면 그러지 않아도 되는가? 그리고 많은 다중 상속 사례들이 현실 세계에도 존재한다. 부모는 다중 상속의 좋은 예다. 각 어린이에게는 부모가 두 명 있다. 따라서 다중 상속을 사용해 클래스를 설계할 수 있다고 보는 게 합리적이다. C++와 같은 일부 객체지향 언어에서는 다중 상속이 가능하다. --- p.77 객체지향 프로그래밍의 주요 목표 중 하나는 사람들이 실제로 생각하는 방식과 비슷한 방식으로 현실 세계의 시스템을 모델링하는 것이다. 클래스 설계라는 것은 이러한 모델을 작성하기 위해 동원하는 객체지향적인 방법이다. 객체지향 방식은, 데이터와 행위가 논리적으로 별개의 객체가 되게 하는 구조적 방식이나 하향식(top-down) 방식을 사용하는 대신에, 데이터와 행위가 서로 상호 작용할 수 있게 한 객체 안에 두어 캡슐화한다. --- p.95 합성(composition)이란 다른 클래스를 사용해 더 복잡한 클래스, 즉 일종의 어셈블리(assemblies, 즉 ‘조립체’)를 구축하는 작업이 포함된다. 이 경우에 부모/자식 관계가 없다. 기본적으로 복합객체(complex objects)는 그 밖의 객체들을 가지고 합성한 것이다. 합성은 has-a 관계를 나타낸다. 예를 들어, 자동차에는 엔진이 있다(has-a 관계). 엔진과 자동차는 모두 서로 분리된 객체, 즉 잠재적으로 각기 독립 객체인 것이다. 그러나 자동차는 엔진 객체가 포함된 복합 객체다. 실제로 자식 객체 자체는 다른 객체로 합성될 수 있다. 예를 들어, 엔진에 실린더가 포함될 수 있다. 이 경우에 엔진에는 실제로 실린더가 있다(has-a 관계). --- p.132 상속을 적절하게 사용하는 방법에 대해 토론할 때 알 수 있었듯이, 최근 개발 환경에서는 이 목록에 합성이 꼭 들어가야 한다. 상속을 꺼리는 일은 예전부터 있어 왔다. 그리고 지난 몇 년에 걸쳐서 이 논쟁이 격화되었다. 필자가 대화해 본 많은 개발자들은 상속보다는 합성을 사용하는 게 좋다고 말한다(가끔은 합성이 상속보다 우위에 있다고도 말한다). 실제로도 어떤 프로그래머는 상속을 전혀 사용하지 않거나 상속 사용을 단일 계층 수준으로 제한해 최소화한다.
출판리뷰
원리와 개념 중심으로 익히는 객체지향 사고방식!
객체지향 개념을 코드와 클래스 다이어그램으로 이해한다!
객체지향 프로그래밍은 C++, 자바, C#, 비주얼베이직닷넷, 루비, 오브젝티브-C 및 스위프트 등 최신 프로그래밍 언어가 기초로 삼는 방식입니다. 또한, 객체는 자바스크립트, 파이썬, PHP 등으로 구사할 수 있는 다양한 웹 기술의 초석 역할을 합니다. 무엇보다 객체지향 프로그래밍 방식을 도입하면 우수한 설계 관행, 코드 이식성, 재사용성 등을 촉진할 수 있습니다. 하지만 이러한 객체지향 개발 환경을 사용하려면 객체지향 개념의 기초부터 다져야 합니다. 따라서 객체지향 프로그래밍 방식을 처음 접한 프로그래머라면 특정 프로그래밍 언어나 모델링 언어를 사용해 보고 싶은 마음은 잠시 접어 두고 이 책부터 읽기를 권합니다.
객체지향을 더 잘 이해할 수 있게 구성한 이 책은 객체지향 프로그래밍을 해법 지향적으로 접근하는 방식을 취합니다. 이 책을 통해 상속과 합성을 사용하는 방법, 응집과 결합의 차이점을 이해하는 방법, 인터페이스와 구현 간의 중요한 차이점을 이해하는 방법을 배울 수 있습니다.
프로그래밍 기술이 여러 해에 걸쳐 변화하고 진화해 왔지만, 플랫폼이 무엇이든지 간에 객체지향 개념은 변하지 않습니다. 이 책에서는 지난 20여 년에 걸쳐 여전히 중요한 자리를 차지하고 있는 객체지향 사고방식의 근원에 초점을 맞추며, 새롭게 범위를 확장한 디자인 패턴을 적용하는 방법, 의존성을 피하는 방법, 소프트웨어를 이해하기 쉽고 유연하며 유지·관리하기 쉬운 것으로 만드는 SOLID 원리를 제시합니다.
객체지향 개념을 코드와 클래스 다이어그램으로 이해한다!
객체지향 프로그래밍은 C++, 자바, C#, 비주얼베이직닷넷, 루비, 오브젝티브-C 및 스위프트 등 최신 프로그래밍 언어가 기초로 삼는 방식입니다. 또한, 객체는 자바스크립트, 파이썬, PHP 등으로 구사할 수 있는 다양한 웹 기술의 초석 역할을 합니다. 무엇보다 객체지향 프로그래밍 방식을 도입하면 우수한 설계 관행, 코드 이식성, 재사용성 등을 촉진할 수 있습니다. 하지만 이러한 객체지향 개발 환경을 사용하려면 객체지향 개념의 기초부터 다져야 합니다. 따라서 객체지향 프로그래밍 방식을 처음 접한 프로그래머라면 특정 프로그래밍 언어나 모델링 언어를 사용해 보고 싶은 마음은 잠시 접어 두고 이 책부터 읽기를 권합니다.
객체지향을 더 잘 이해할 수 있게 구성한 이 책은 객체지향 프로그래밍을 해법 지향적으로 접근하는 방식을 취합니다. 이 책을 통해 상속과 합성을 사용하는 방법, 응집과 결합의 차이점을 이해하는 방법, 인터페이스와 구현 간의 중요한 차이점을 이해하는 방법을 배울 수 있습니다.
프로그래밍 기술이 여러 해에 걸쳐 변화하고 진화해 왔지만, 플랫폼이 무엇이든지 간에 객체지향 개념은 변하지 않습니다. 이 책에서는 지난 20여 년에 걸쳐 여전히 중요한 자리를 차지하고 있는 객체지향 사고방식의 근원에 초점을 맞추며, 새롭게 범위를 확장한 디자인 패턴을 적용하는 방법, 의존성을 피하는 방법, 소프트웨어를 이해하기 쉽고 유연하며 유지·관리하기 쉬운 것으로 만드는 SOLID 원리를 제시합니다.
상품 리뷰
동일한 상품에 대해 작성된 상품 리뷰로, 판매자는 다를 수 있습니다.
동일한 상품에 대해 작성된 상품 리뷰로, 판매자는 다를 수 있습니다.
등록된 상품평이 없습니다.
상품문의
- 구매한 상품의 취소/반품은 마이쿠팡 구매내역에서 신청 가능합니다.
- 상품문의 및 후기게시판을 통해 취소나 환불, 반품 등은 처리되지 않습니다.
- 가격, 판매자, 교환/환불 및 배송 등 해당 상품 자체와 관련 없는 문의는 고객센터 내 1:1 문의하기를 이용해주세요.
- "해당 상품 자체"와 관계없는 글, 양도, 광고성, 욕설, 비방, 도배 등의 글은 예고 없이 이동, 노출제한, 삭제 등의 조치가 취해질 수 있습니다.
- 공개 게시판이므로 전화번호, 메일 주소 등 고객님의 소중한 개인정보는 절대 남기지 말아주세요.
아직 문의가 없습니다.
판매 부적격 상품 또는 허위과장광고 및 지식재산권을 침해하는 상품의 경우 신고하여 주시기 바랍니다.
배송정보
| 배송방법 | 순차배송 | 배송비 | 무료배송 |
|---|---|---|---|
| 배송사 | 업체직송 | ||
| 묶음배송 여부 | 가능 | ||
| 배송기간 | ㆍ도서산간 지역 등은 배송에 3-5일이 더 소요될 수 있습니다. - 천재지변, 물량 수급 변동 등 예외적인 사유 발생 시, 다소 지연될 수 있는 점 양해 부탁드립니다. | ||
교환/반품 안내
- ㆍ교환/반품에 관한 일반적인 사항은 판매자가 제시사항보다 관계법령이 우선합니다.
다만, 판매자의 제시사항이 관계법령보다 소비자에게 유리한 경우에는 판매자 제시사항이 적용됩니다.
| 교환/반품 비용 (왕복비용) | 5,000원 - 단, 고객 변심의 경우에만 발생 - 도서산간 및 일부 지역 추가비용 발생 |
|---|---|
| 교환/반품 신청 기준일 | ㆍ단순변심에 의한 교환/반품은 제품 수령 후 7일 이내까지, 교환/반품 제한사항에 해당하지 않는 경우에만 가능 (배송비용과 교환/반품 비용 왕복배송비 고객부담) ㆍ상품의 내용이 표시·광고의 내용과 다른 경우에는 상품을 수령한 날부터 3개월 이내, 그 사실을 안 날 또는 알 수 있었던 날부터 |
교환/반품 제한사항
- ㆍ주문/제작 상품의 경우, 상품의 제작이 이미 진행된 경우
- ㆍ상품 포장을 개봉하여 사용 또는 설치 완료되어 상품의 가치가 훼손된 경우 (단, 내용 확인을 위한 포장 개봉의 경우는 예외)
- ㆍ고객의 사용, 시간경과, 일부 소비에 의하여 상품의 가치가 현저히 감소한 경우
- ㆍ세트상품 일부 사용, 구성품을 분실하였거나 취급 부주의로 인한 파손/고장/오염으로 재판매 불가한 경우
- ㆍ모니터 해상도의 차이로 인해 색상이나 이미지가 실제와 달라, 고객이 단순 변심으로 교환/반품을 무료로 요청하는 경우
- ㆍ제조사의 사정 (신모델 출시 등) 및 부품 가격 변동 등에 의해 무료 교환/반품으로 요청하는 경우
※ 각 상품별로 아래와 같은 사유로 취소/반품이 제한될 수 있습니다.
| 의류/잡화/수입명품 | ⋅ 상품의 택(TAG) 및 라벨의 멸실 또는 훼손, 상품의 사용 또는 훼손, 구성품 누락으로 상품의 가치가 현저히 감소된 경우 |
|---|---|
| 계절상품/식품/화장품 | ㆍ신선/냉장/냉동 상품의 단순변심의 경우 ㆍ뷰티 상품 이용 시 트러블(알러지, 붉은 반점, 가려움, 따가움)이 발생하는 경우, |
| 전자/가전/설치상품 | ㆍ설치 또는 사용하여 재판매가 어려운 경우, 액정이 있는 상품의 전원을 켠 경우 ㆍ상품의 시리얼 넘버 유출로 내장된 소프트웨어의 가치가 감소한 경우 (내비게이션, OS시리얼이 적힌 PMP) ㆍ홀로그램 등을 분리, 분실, 훼손하여 상품의 가치가 현저히 감소하여 재판매가 불가할 경우 (노트북, 데스크탑 PC 등) |
| 자동차용품 | ㆍ상품을 개봉하여 장착한 이후 단순변심인 경우 |
| CD/DVD/GAME/ BOOK | ㆍ복제가 가능한 상품의 포장 등을 훼손한 경우 |
판매자 정보
상호/대표자 | 예스이십사주식회사 / 김석환 | 사업장 소재지 | 서울영등포구여의도동 15-15일신빌딩5,6층 |
|---|---|---|---|
e-mail | bookpartner3@yes24.com | 연락처 | 1599-1121 |
통신판매업 신고번호 | 2005-02682 | 사업자번호 | 229-81-37000 |
구매안전 서비스 | 02-006-00042 서비스 가입사실 확인 > 본 판매자는 고객님의 안전거래를 위해 관련 법률에 의거하여 쿠팡페이의 구매안전서비스를 적용하고 있습니다. | ||
미성년자가 체결한 계약은 법정대리인이 동의하지 않는 경우 본인 또는 법정대리인이 취소할 수 있습니다. 쿠팡은 통신판매중개자로서 통신판매의 당사자가 아니며, 광고, 고시정보, 상품 주문, 배송 및 환불의 의무와 책임은 각 판매자에 있습니다.







