이미지 검색을 사용해 보세요
검색창 이전화면 이전화면
최근 검색어
인기 검색어

소득공제 베스트셀러 청년패스
K 교수의 두 번째 객체지향 이야기
자바 중심으로 살펴보는 객체지향 개념, 언어, UML 설계, CASE 도구
에이콘온 2026.07.29.
베스트
프로그래밍 언어 30위 IT 모바일 top100 1주
가격
45,000
10 40,500
YES포인트?
900원 (2%)
5만원 이상 구매 시 2천원 추가 적립
결제혜택
카드/간편결제 혜택을 확인하세요

이미 소장하고 있다면 판매해 보세요.

  •  국내배송만 가능
  •  문화비소득공제 가능

책소개

목차

1장 객체지향 패러다임의 역사

__1.1 소프트웨어 공학적 관점의 역사
__1.2 객체지향 언어의 역사
__1.3 객체지향 방법론과 객체지향 도구
__1.4 독자가 주지해야 할 사항

2장 C 언어와 자바

__2.1 포인터와 구조체
____2.1.1 참조에 의한 호출을 위한 경우
____2.1.2 배열에 대한 간접적인 접근 수단으로 사용하는 경우
____2.1.3 동적 변수의 접근 수단으로 사용하는 경우
____2.1.4 고수준의 추상화된 정보를 표현하기 위한 경우
__2.2 잘 짜인 C 프로그램
____2.2.1 가장 엉터리지만 가장 자주 보게 되는 경우
____2.2.2 함수를 엉터리로 작성하는 경우
____2.2.3 범용성 있는 함수 작성의 경우
____2.2.4 구조체를 이용한 경우
____2.2.5 자료 추상화를 적용한 C 프로그램 스타일
__2.3 C와 자바와의 관계
____2.3.1 typedef 선언문을 class 정의 문으로 바꾼다.
____2.3.2 함수 시그니처에서 첫 번째 형식 인자를 생략한다.
____2.3.3 함수 바디에 this라는 변수를 도입한다.
____2.3.4 생성자(constructor)를 만든다.
____2.3.5 메인 함수의 변환
__2.4 자바의 특성 요약

3장 객체지향 패러다임의 기본 원리

__3.1 기본 지식
____3.1.1 '객체지향' 용어에 대해
____3.1.2 '추상화'의 의미
____3.1.3 시스템을 해석하는 관점
____3.1.4 '객체'와 '클래스'
____3.1.5 '같은 것'과 '다른 것'에 대한 고찰
____3.1.6 공급자와 사용자
____3.1.7 객체의 부속품
__3.2 자료 추상화
__3.3 상속
__3.4 다형 개념
__3.5 동적 바인딩
__3.6 객체지향 프로세스의 특성
____3.6.1 반복적인 프로세스
____3.6.2 솔기 없는 프로세스
____3.6.3 상향식 프로세스
____3.6.4 재사용에 대한 고려
__3.7 객체지향의 기타 속성

4장 객체지향 기술의 심화 기능

__4.1 추상 클래스
__4.2 다중 상속
__4.3 예외 처리 기능
____4.3.1 과거의 접근 방법
____4.3.2 예외 처리 문법
____4.3.3 예외 처리 방식
____4.3.4 예외 처리 기타 사항
__4.4 인터페이스
____4.4.1 명세부로서의 의미
____4.4.2 사물을 보는 관점
____4.4.3 자바에서의 이용
____4.4.4 C++의 경우의 인터페이스
____4.4.5 컴포넌트 공학에서의 이용
__4.5 리플렉션
__4.6 시리얼라이제이션
__4.7 RMI
____4.7.1 RMI 코딩 기본 절차
____4.7.2 서버에서 클라이언트 레퍼런스 사용
____4.7.3 클라이언트에서 다른 클라이언트 레퍼런스 사용
__4.8 디자인 패턴
____4.8.1 템플릿 메서드 패턴
____4.8.2 데코레이터 패턴
____4.8.3 옵저버 패턴
____4.8.4 커맨드 패턴
__4.9 객체지향 기타 원리
____4.9.1 결합도와 응집력
____4.9.2 디미터의 법칙
____4.9.3 단일 역할 원칙
____4.9.4 개방 폐쇄 원칙
____4.9.5 의존성 역전 원칙

5장 객체지향 패러다임의 실습

__5.1 자료 추상화의 사용
____5.1.1 클래스의 필요성 인식 후 클래스 명칭 결정
____5.1.2 사용자 관점에서 클래스의 이용
____5.1.3 클래스의 명세 결정
____5.1.4 생산자 관점에서 클래스 자원 구현
____5.1.5 클래스 검증 및 확정
__5.2 상속의 사용
____5.2.1 클래스 묶음의 인식
____5.2.2 클래스 묶음에 속하는 개별 클래스의 서비스 정의
____5.2.3 개별 클래스의 본질적인 데이터 멤버 정의
____5.2.4 데이터 멤버 중에서 공통적인 것의 구분
____5.2.5 상속 트리의 여러 대안 제시 및 평가
____5.2.6 선택된 상속 트리를 이용한 구현
__5.3 동적 바인딩의 적용
____5.3.1 루트 클래스를 위한 멤버 함수 시그니처 모으기
____5.3.2 하위 클래스를 위한 메서드 구현
____5.3.3 사용자 관점에서 코드 작성 방식
____5.3.4 동적 바인딩의 처리를 위한 내부 메커니즘
__5.4 다형 개념의 적용

6장 UML

__6.1 다이어그램 개요
____6.1.1 유즈케이스 다이어그램
____6.1.2 클래스 다이어그램
____6.1.3 시퀀스 다이어그램
____6.1.4 협동도
____6.1.5 상태도
____6.1.6 행위도
____6.1.7 배치도
__6.2 클래스 다이어그램의 이용법
____6.2.1 클래스 표기법의 이용
____6.2.2 일반화 표기법의 이용
____6.2.3 집합화/합성화
____6.2.4 의존관계
____6.2.5 일대일(1:1) 결합관계
____6.2.6 일대상수(1:K) 결합관계
____6.2.7 일대다(1:N) 결합관계
____6.2.8 다대다(M:N) 결합관계
____6.2.9 결합 클래스
____6.2.10 삼각관계
__6.3 모델링 팁

7장 객체지향 구현

__7.1 에덴동산 예제
____7.1.1 에덴동산 C++ 버전
____7.1.2 에덴동산 자바 버전
__7.2 자바로 작성된 간단한 그래픽 편집기 예제
__7.3 기타 객체지향 언어 소개
____7.3.1 스몰토크
____7.3.2 오브젝티브 C
____7.3.3 Ada
__7.4 프로그래밍 팁

8장 OODesigner의 사용법

__8.1 개요
__8.2 다이어그래머 사용법
__8.3 특이 기능
____8.3.1 갈라진 선분 긋기
____8.3.2 소스코드 편집 대화상자 기능
____8.3.3 화면 캡처 기능
____8.3.4 관련 클래스 요약 기능
____8.3.5 OLE 컨테이너 기능
____8.3.6 OLE 서버 기능

저자 소개 2

서울대학교 전산학 박사 전 부산외국어대학교 컴퓨터공학과 교수
KAIST 전산학 박사 현 동아대학교 소프트웨어대학 교수

품목정보

발행일
2026년 07월 29일
쪽수, 무게, 크기
648쪽 | 188*250*35mm
ISBN13
9791194409700

출판사 리뷰

문법을 넘어 소프트웨어가 유연해지는 진짜 설계를 만나다
30년의 탐구와 통찰이 담긴 가장 솔직하고 정교한 객체지향 안내서

· 문법은 배웠다. 그런데 왜 설계는 여전히 막막할까?

자바나 C++ 문법은 능숙하게 다루는데, 왜 내 코드는 구조적 프로그래밍에 갇혀 있을까? 문법은 도구일 뿐, 도구를 다루는 것과 유연한 구조를 설계하는 것은 전혀 다른 영역이기 때문이다. 이 책은 단순한 API 사용법이나 추상적인 이론을 늘어놓지 않는다. 코드가 진화하는 과정 자체로 설계가 왜 필요한지 보여 준다. 고급 기술과 디자인 패턴도 외울 대상이 아니라 설계 문제의 해법으로 자연스럽게 만나게 된다.

· 이 책은 절대 편법이나 지름길을 말하지 않는다.

"동적 할당과 포인터라는 용어를 처음 접하는 사람은 당장 이 책을 덮어야 한다." 저자는 시작부터 타협 없는 경고를 던진다. 얄팍한 요령 대신 컴퓨터 과학의 탄탄한 기초 체력을 요구하는 정공법을 택했기 때문이다. 객체지향을 온전히 이해하는 과정은 험난한 설악산을 등반하는 것과 같다. 안개에 가려 전방 100미터만 보이는 고단한 고개를 끈기 있게 넘어야 한다. 그러나 마침내 정상에 올라서는 순간, 막혔던 시야가 트이며 세상을 완전히 새로운 객체의 눈으로 바라보는 지적 희열을 맛보게 된다. 이 책은 그 정상으로 가는 가장 정직한 길을 안내한다.

리뷰/한줄평4

리뷰

첫번째 리뷰어가 되어주세요.

한줄평

10.0 한줄평 총점

클린봇이 부적절한 글을 감지 중입니다.

설정
40,500
1 40,500