책 이미지

책 정보
· 분류 : 국내도서 > 컴퓨터/모바일 > 프로그래밍 개발/방법론 > 객체지향 프로그래밍/UML
· ISBN : 9788956741871
· 쪽수 : 520쪽
· 출판일 : 2004-05-15
책 소개
목차
제1부 객체지향 소프트웨어 개발이란?
제1장 C 언어 프로그래머도 이해하는
클래스란 무엇인가?
객체지향에 있어서 클래스의 위치와 그 구조
클래스와 프로그래밍
이 장의 정리
객체지향 전설 I
"클래스는 만드는 것이 아니고 사용하는 것이다."
제2장 '데이터'가 아니라 '클래스'인 이유
멤버함수란?
멤버 함수
멤버 함수의 역할
클래스의 정의 방법 및 사용 방법
멤버 함수의 정의 방법
클래스의 사용 방법
이 장의 정리
객체지향 전설 II
"C 언어로도 객체지향 프로그래밍이 가능하다"
제3장 객체지향 개발
개발자 입장에서의 장점은?
왜 객체지향인 것인가?
객체지향의 동기
뛰어난 소프트웨어란?
시스템의 성장과 객체지향
객체지향 vs 구조화
객체지향 개발의 순서
분석, 설계란?
이 장의 정리
객체지향 전설 III
"객체지향은 구조화의 연장선상에 있는 기술이다"
제2부 정적 분석
제4장 클래스
무엇이 클래스가 되는가? 그리고 되지 않는가?
제2의 고개
객체지향과 시뮬레이션
클래스 뽑아내기
분석적 관점에서 본 클래스
클래스 다이어그램의 작성
클래스 명세의 범위
오퍼레이션의 추출
속성의 추출
클래스 후보에서 클래스가 되는 기준
타입과 클래스
다시 보는 객체지향과 시뮬레이션
모델링을 잘하기 위해서는
이 장의 마무리
표기법에 대해서
객체지향 전설 IV
"C++에는 정수 클래스가 없어서 OOPL로서는 아름답지 않다"
우울한 프로그래머를 위한 C++ 언어 입문 1
new와 delete
제5장 관 계
알려지지 않은 중요한 개념
관계
관계의 분석과 표기 방법
관계와 속성의 차이점
다중성
역할(Role)
관계의 클래스화
실제 분석에서 관계의 클래스화
관계의 구현
단방향 관계와 양방향 관계
클래스 다이어그램의 완성
객체지향이 무엇인가?
이 장을 마치며
객체지향 전설 V
"객체지향 설계는 하위 접근(Bottom Approach) 방식이다"
우울한 프로그래머를 위한 C++ 언어 입문 2
생성자(constructor)/소멸자(destructor)
제6장 상 속
프로그래밍을 하지 않고 프로그램을 만드는 방법
상속의 메커니즘
상속의 목적
일반화로서의 상속
왜?
상속의 분석
상속의 기술
상속의 장점
특수화로서의 상속
프로그램 측면에서 상속의 예
커스터마이즈로서의 상속
상속한 클래스의 관리
이 장을 마치며
객체지향 전설 VI
"클래스의 관계에는 is-a 관계와 has-a 관계가 있다"
우울한 프로그래머를 위한 C++ 언어 입문 3
상속
제7장 보다 수준 높은 분석
한층 더 깊이 시스템을 통찰하기 위해서
클래스 속성
클래스 속성이란
클래스에서 클래스 속성의 위치
클래스 속성의 구현
설계/구현에 있어서의 클래스 속성의 응용
파생 속성
파생 속성의 기술
집합
이것은 집합인가?
집합의 구현
이 장을 마치며
우울한 클래스 다이어그램의 유지보수
제8장 다중 상속
여러 가지 모습을 가진 클래스의 본질을 알아보자
다중 상속
다중 상속이란 무엇인가?
다중 상속이 표현하는 개념
다중 상속의 구현
다중 상속의 문제점
보다 심도 있는 분석
가상 기반 클래스
다중 상속 사용의 지침
그 외의 주의할 점
이 장을 마치며
정적 분석을 마치며
객체지향 전설 VII
"객체지향에서 제일 중요한 개념은 캡슐화, 상속, 다형성 이 세 가지이다"
우울한 프로그래머를 위한 C++ 언어 입문 4
다형성
제3부 동적 분석
제9장 객체의 상태
객체의 변화를 관리하기 위한 방법
새로운 문제
전역 변수
상태
상태 관리의 실례
상태 전이 다이어그램을 프로그램에 응용하기
프로그램 부에서의 정의
상태 변화의 구현
이 장을 마치며
분석 설계 방법론
우울한 프로그래머를 위한 C++ 언어 입문 5
friend
제10장 한층 깊이 보는 상태 관리
유한 상태 머신의 본질을 따라잡기 위하여
보다 자세한 상태의 파악
자기 전이
출입 동작
상태의 계층화
병행 상태
조건부 상태 전이
정적 분석과의 관계
이 장을 마치며
UML
우울한 프로그래머를 위한 C++ 언어 입문 6
클래스 템플릿
제11장 메시지 시퀀스
객체 연계의 파악
객체지향에서의 프로그램 동작
메시지 시퀀스의 분석
시퀀스 다이어그램
시퀀스 다이어그램의 기술 방법
시퀀스 다이어그램의 구체적인 예
시퀀스 다이어그램을 작성할 때의 주의 사항
협력 다이어그램
메시지 시퀀스 분석의 실제
이 장을 마치며
우울한 프로그래머를 위한 C++ 언어 입문 7
연산자 오버로드
유즈케이스
제4부 설계/구현
제12장 객체지향 설계
실제로 프로그램을 동작하기 위해서
객체지향 설계
문제 영역 이외의 클래스
OOSE에서의 클래스 분류
보다 실질적인 분류
사용자 인터페이스와 관계가 있는 클래스
객체지향과 UI
UI의 구체적인 예
기존의 UI와 객체지향 UI
특정의 처리를 하는 클래스
클래스의 애플리케이션 의존
서브시스템 분할
클래스의 상세화
이 장을 마치며
제13장 클래스 라이브러리
객체지향에 반드시 필요한 구현 기술
클래스 라이브러리
문자열의 클래스화
string 클래스
분석 레벨에서 본 문자열 클래스
컨테이너 클래스
컨테이너 클래스의 사용 용도
STL
vector 클래스 템플릿
리스트(List) 클래스 템플릿
리스트 구조
반복자
리스트 클래스 템플릿의 사용 방법
객체지향적 관점에서 본 반복자
이 장을 마치며
객체지향 소프트웨어의 개발
우울한 프로그래머를 위한 C++ 언어 입문 8
대입 연산자 오버로드, 복사(copy) 생성자
제14장 실례
동작하는 프로그램을 작성하자
마방진
C 언어로의 구현
객체지향적 분석
명세
명사의 추출
관계 골라내기
오퍼레이션 골라내기
속성 골라내기
동적 분석
클래스 다이어그램 다듬기
설계
이 장을 마치며
객체지향의 미래
완성된 마방진의 샘플 프로그램
찾아보기