목차 일부
책을 시작하며 ... 1
감수자의 말 ... 2
머리말 ... 4
1부 객체지향
1부를 시작하며 ... 15
1.객체지향의 도입 ... 17
1.1 소프트웨어의 위기 ... 18
1.2 객체지향 방법론 ... 20
2. 객체 ... 25
2.1 객체란 ... 25
2.2 객체간의 관계 ... 26
...
더보기
목차 전체
책을 시작하며 ... 1
감수자의 말 ... 2
머리말 ... 4
1부 객체지향
1부를 시작하며 ... 15
1.객체지향의 도입 ... 17
1.1 소프트웨어의 위기 ... 18
1.2 객체지향 방법론 ... 20
2. 객체 ... 25
2.1 객체란 ... 25
2.2 객체간의 관계 ... 26
이다 관계 ... 26
가지다 관계 ... 27
하다 관계 ... 27
3. 객체와 클래스 ... 28
3.1 구조체 ... 29
3.2 클래스 ... 31
생성자와 파괴자 ... 33
4. 캡슐화 ... 34
5. 추상화 ... 36
6. 상속 ... 39
추상 클래스 ... 40
인터페이스와 다중상속 ... 41
7. 다형성 ... 43
오버로드(overload) ... 44
오버라이드(override) ... 44
8. 메시지와 상태 ... 48
메시지 ... 48
상태(state) ... 49
1부를 끝내며 ... 50
1부 요약 ... 50
2부 객체지향언어
2부를 시작하며 ... 53
1. 클래스와 객체 ... 55
1.1 클래스와 객체 ... 55
간단한 클래스 정의하기 ... 55
클래스 데이터와 클래스 메소드 ... 60
중첩된 클래스 ... 61
1.2 캡슐화 ... 63
접근 권한의 통제 ... 63
중첩된 클래스에 접근 권한 설정 ... 65
객체에 대한 참조 ... 69
1.3 객체의 일생 ... 70
객체 초기화 ... 71
초기자(Initializer) 리스트 ... 74
readonly 멤버, private 생성자 ... 75
객체의 일생 ... 79
파괴자(Destructor) ... 80
Finalize 메소드 ... 81
1.4 스코프 ... 82
네임스페이스 ... 83
this 연산자 ... 85
2. 상속 ... 88
2.1 상속 ... 88
단일 상속과 다중 상속 ... 93
2.2 데이터형 ... 99
데이터 형변환 ... 100
클래스 사이의 형변환 ... 101
is연산자와 as연산자 ... 104
상자화(Boxing)와 상자해제(Unboxing) ... 109
가상메소드(Virtual Method) ... 109
new를 이용한 메소드 선언 ... 112
sealed 클래스 ... 113
2.3 인터페이스와 추상 클래스 ... 113
인터페이스 ... 113
추상 클래스 ... 117
3. 다형성 ... 123
3.1 다형성(폴리모피즘) ... 123
3.2 오버로딩 ... 126
연산자 ... 126
연산자 오버로딩 ... 127
관계형 연산자 오버로딩 ... 129
다중 오버로딩 ... 130
형변환 연산자와 오버로딩 ... 131
3.3 오버라이딩 ... 132
매소드 오버라이딩 ... 142
4. 그 밖의 주요 구현 ... 152
4.1 프로퍼티 ... 152
프로퍼티(Property) ... 152
4.2 인덱서 ... 156
4.3 위임형 ... 161
위임형(Delegate) ... 161
위임형 활용 ... 164
4.4 이벤트 ... 167
이벤트 ... 167
이벤트 처리 ... 168
4.5 예외 핸들링 ... 173
예외 ... 174
예외 처리 ... 174
2부를 끝내며 ... 178
2부 요약 ... 178
부록 UML(시스템 분석과 설계)
부록을 시작하며 ... 181
1. UML ... 183
1.1 UML 개요 ... 183
1.2 UML의 구성요소와 표현요소 ... 185
1.3 사물 ... 186
구조 사물 ... 186
행위 사물 ... 187
그룹 사물 ... 187
주석 사물 ... 188
1.4 관계 ... 188
의존 관계 ... 188
연관 관계 ... 188
일반화 관계 ... 189
실제화 관계 ... 189
1.5 다이어그램 ... 189
클래스 다이어그램 ... 189
오브젝트 다이어그램 ... 190
유즈케이스 다이어그램 ... 190
시퀸스 다이어그램 ... 191
협력(Collaboration) 다이어그램 ... 191
상태(State) 다이어그램 ... 192
행위(Activity) 다이어그램 ... 193
컴포넌트 다이어그램 ... 193
배포(Deployment) 다이어그램 ... 194
2. 시스템 분석 ... 195
2.1 시스템 분석단계 ... 195
2.1.1 분석 행위 ... 196
현황평가 행위 ... 197
요구사항 정의 행위 ... 197
논리 모델 구축 행위 ... 198
기술구조 정의 행위 ... 199
프로토타이핑 행위 ... 199
2.2 유즈케이스 ... 201
2.2.1 유즈케이스 다이어그램 ... 201
2.2.2 유즈케이스 명세서 ... 203
2.2.3 유즈케이스 모델링 ... 207
2.3 시스템 정적 모델링 ... 208
2.3.1 클래스 다이어그램 ... 209
클래스 ... 209
속성 ... 210
서비스 ... 211
스테레오 타입- 클래스 ... 211
2.3.2 관계 - 클래스 ... 212
연관 관계 ... 212
집합 관계 ... 213
상속 관계 ... 214
의존 관계 ... 215
2.3.3 시스템 정적 모델링 ... 216
2.4 시스템 동적 모델링 ... 218
2.4.1 동적 모델링 ... 219
2.4.2 시퀀스 다이어그램 ... 221
2.4.3 협력 다이어그램 ... 225
2.4.4 상태 다이어그램 ... 228
3. 시스템 설계 ... 234
3.1 시스템 설계단계 ... 234
3.1.1 설계 행위 ... 235
기본 설계 행위 ... 235
분산 설계 행위 ... 236
상세 설계 행위 ... 237
컨버전/테스트 설계 행위 ... 237
3.1.2 패키지 설계 ... 238
물리적 패키지 설계 ... 238
배포/컴포넌트 다이어그램 ... 239
3.2 시스템 구조 설계 ... 240
3.2.1 구조 설계 ... 241
클라이언트/서버 기술 구조 ... 242
MVC 기술 구조 ... 242
어플리케이션 모델 기술 구조 ... 243
3.2.2 구조 설계 과정 ... 244
3.3 시스템 분산 설계 ... 246
분산시스템 모델 ... 247
3.4 시스템 정보저장소 설계 ... 249
정보저장소 ... 249
정보저장소 객체 ... 250
부록을 끝내며 ... 253
부록 요약 ... 253
3부 디자인 패턴
3부를 시작하며 ... 255
1. 디자인 패턴 소개 ... 259
2. 생성 패턴 ... 263
2.1 팩토리 메소드(Factory Method) 패턴 ... 265
팩토리 메소드 패턴 소개 ... 265
팩토리 메소드 패턴 예제 ... 267
2.2 추상 팩토리(Abstract Factory) 패턴 ... 278
추상 팩토리 패턴 소개 ... 278
추상 팩토리 패턴 예제 ... 280
2.3 빌더(Builder) 패턴 ... 290
빌더 패턴 소개 ... 290
빌더 패턴 예제 ... 292
2.4 프로토타입(Prototype) 패턴 ... 300
프로토타입 패턴 소개 ... 300
프로토타입 패턴 예제 ... 303
2.5 싱글톤(Singleton) 패턴 ... 316
싱글톤 패턴 소개 ... 316
싱글톤 패턴 예제 ... 319
3. 구조 패턴 ... 325
3.1 Facade 패턴 ... 327
Facade 패턴 소개 ... 327
Facade 패턴 예제 ... 329
3.2 어댑터(Adapter) 패턴 ... 335
어댑터 패턴 소개 ... 335
어댑터 패턴 예제 ... 336
3.3 브리지(Bridge) 패턴 ... 342
브리지 패턴 소개 ... 342
브리지 패턴 예제 ... 344
3.4 컴포짓(Composite) 패턴 ... 352
컴포짓 패턴 소개 ... 352
컴포짓 패턴 예제 ... 355
3.5 데코레이터(Decorator) 패턴 ... 363
데코레이터 패턴 소개 ... 363
데코레이터 패턴 예제 ... 366
3.6 Flyweight 패턴 ... 375
Flyweight 패턴 소개 ... 375
Flyweight 패턴 예제 ... 376
3.7 프록시(Proxy) 패턴 ... 385
프록시 패턴 소개 ... 385
프록시 패턴 예제 ... 386
4. 행위 패턴 ... 395
4.1 메멘토(Memento) 패턴 ... 398
메멘토 패턴 소개 ... 398
메멘토 패턴 예제 ... 399
4.2 Chain of Responsibility 패턴 ... 408
Chain of Responsibility 패턴 소개 ... 408
Chain of Responsibility 패턴 예제 ... 409
4.3 커맨드(Command) 패턴 ... 417
커맨드 패턴 소개 ... 417
커맨드 패턴 예제 ... 418
4.4 인터프리터(Interpreter) 패턴 ... 430
인터프리터 패턴 소개 ... 430
인터프리터 패턴 예제 ... 432
4.5 Iterator 패턴 ... 442
Iterator 패턴 소개 ... 442
Iterator 패턴 예제 ... 444
4.6 미디에이터(Mediator) 패턴 ... 453
미디에이터 패턴 소개 ... 453
미디에이터 패턴 예제 ... 456
4.7 Observer 패턴 ... 465
Observer 패턴 소개 ... 465
Observer 패턴 예제 ... 468
4.8 상태(State) 패턴 ... 476
상태 패턴 소개 ... 476
상태 패턴 예제 ... 481
4.9 Strategy 패턴 ... 489
Strategy 패턴 소개 ... 489
Strategy 패턴 예제 ... 492
4.10 템플릿 메소드(Template Method) 패턴 ... 498
템플릿 메소드 패턴 소개 ... 498
템플릿 메소드 패턴 예제 ... 502
4.11 비지터(Visitor) 패턴 ... 508
비지터 패턴 소개 ... 508
비지터 패턴 예제 ... 510
3부를 끝내며 ... 517
3부 요약 ... 517
찾아보기(인덱스) ... 521
더보기 닫기