MARC 닫기
01046nam ac200349 k 4500
000000735231
20220619192308
ta
040624s2004 ulka 001 kor
▼a 8991105009
▼g 93560:
▼c \35000
▼a 248023
▼c 248023
▼d 111314
▼a kor
▼h eng
▼l EM0000170215
▼l EM0000172082
▼c 2
▼l EM0000178210
▼c 3
▼a 005.1
▼2 21
▼a 005.1
▼b 마88ㅅ
▼a 마틴, 로버트 C.
▼a 소프트웨어 개발의 지혜:
▼b 원칙, 디자인 패턴, 실천방법/
▼d 로버트 C. 마틴 지음;
▼e 이용원;
▼e 정지호;
▼e 김정민 공역.
▼a Agile software development
▼a 서울:
▼b 야스미디어,
▼c 2004.
▼a xxxi,660p.:
▼b 삽도;
▼c 26cm.
▼a 권말부록으로 'UML 표기법'등 수록
▼a Martin, Roberts Cecil
▼a 참고문헌과 색인수록
▼a 소프트웨어 개발[--開發]
▼a 소프트웨어
▼a 소프트웨어개발
▼a AGILE
▼a SOFTWARE
▼a 이용원
▼a 정지호
▼a 김정민
▼a Martin, Roberts Cecil
▼b \35000
▼a FUTURE
▼a 단행본
| 자료유형 : | 단행본 |
|---|---|
| ISBN : | 8991105009 |
| 분류기호 : | 005.1 |
| 개인저자 : | 마틴, 로버트 C. |
| 서명/저자사항 : | 소프트웨어 개발의 지혜: 원칙, 디자인 패턴, 실천방법/ 로버트 C. 마틴 지음; 이용원; 정지호; 김정민 공역. |
| 원서명 : | Agile software development |
| 발행사항 : | 서울: 야스미디어, 2004. |
| 형태사항 : | xxxi,660p.: 삽도; 26cm. |
| 일반주기 : | 권말부록으로 'UML 표기법'등 수록 |
| 일반주기 : | Martin, Roberts Cecil |
| 서지주기 : | 참고문헌과 색인수록 |
| 일반주제명 : | 소프트웨어 개발[--開發] -- |
| 개인저자 : | 이용원 |
| 개인저자 : | 정지호 |
| 개인저자 : | 김정민 |
| 개인저자 : | Martin, Roberts Cecil |
| 언어 | 한국어 |
KMO200401528
권 호 :
발행년 : 2004
발행처 : 야스미디어
서 명 : 소프트웨어 개발의 지혜
목차
서문 = ⅲ
한국어판 서문 = ⅳ
머리말 = ⅵ
저자에 대해 = xv
역자 머리말 = xvi
디자인 패턴 목록 = xxxi
1절 애자일 개발 = 1
1장 애자일 실천방법 = 3
애자일 동맹 = 4
애자일 동맹 선언 = 4
원칙 = 8
결론 = 11
2장 익스트림 프로그래밍 소개 = 13
익스트림 프로그래밍 실천방법 = 13
고객 팀 구성원 = 14
사용자 스토리 = 14
짧은 반복 = 15
인수 테스트 = 15
짝 프로그래밍 = 16
테스트 주도적 개발 = 17
공동 소유권 = 17
지속적인 통합 = 18
지속 가능한 속도 = 18
열린 작업 공간 = 19
게임 계획 세우기 = 19
단순한 설계 = 20
리팩토링 = 21
메타포 = 21
결론 = 23
3장 계획 세우기 = 25
초기 탐구 = 25
스파이크, 분할, 속도 = 26
릴리즈 계획 세우기 = 27
반복 계획 세우기 = 27
태스크 계획 세우기 = 28
반환점 = 29
반복 = 29
결론 = 30
4장 테스트 = 31
테스트 주도적 개발 = 31
우선 테스트 방식 설계의 예 = 32
테스트 분리 = 34
운 좋게 얻은 분리 = 36
인수 테스트 = 36
인수 테스트의 예 = 37
운 좋게 얻은 아키텍처 = 40
결론 = 40
5장 리팩토링 = 41
소수 생성기 : 리팩토링의 간단한 예 = 42
최종 점검 = 50
결론 = 53
6장 프로그래밍 에피소드 = 55
볼링 게임 = 56
결론 = 94
볼링 규칙 개요 = 95
2절 애자일 설계 = 97
설계가 잘못되었을 때의 증상 = 97
원칙 = 98
악취와 원칙 = 98
7장 애자일 설계란 무엇인가 = 99
소프트웨어에서 어떤 것이 잘못되는가 = 99
설계의 악취 - 부패하고 있는 소프트웨어의 냄새 = 100
무엇이 소프트웨어의 부패를 촉진시키는가 = 103
애자일 팀은 소프트웨어가 부패하도록 내버려 두지 않는다 = 103
"Copy" 프로그램 = 103
Copy 프로그램의 애자일 설계 = 108
애자일 개발자는 해야 할 일을 어떻게 알았는가 = 109
가능한 좋은 상태로 설계 유지하기 = 110
결론 = 110
8장 SRP : 단일 책임 원칙 = 111
SRP : 단일 책임 원칙 = 111
책임이란 무엇인가 = 113
결합된 책임 분리하기 = 114
영속성 = 115
결론 = 115
9장 OCP : 개방-폐쇄 원칙 = 117
OCP : 개방-폐쇄 원칙 = 117
상세 설명 = 118
해결책은 추상화이다 = 118
Shape 애플리케이션 = 120
OCP 위반 = 121
OCP 따르기 = 123
그래, 거짓말이다 = 124
예상과 "자연스러운" 구조 = 125
"올가미" 놓기 = 125
명시적인 폐쇄를 위해 추상화 사용하기 = 126
폐쇄를 위해 "데이터 주도적" 접근 방식 사용하기 = 128
결론 = 130
10장 LSP : 리스코프 치환 원칙 = 131
LSP : 리스코프 치환 원칙 = 131
LSP 위반의 간단한 예 = 132
정사각형과 직사각형, 좀더 미묘한 위반 = 133
본질적인 문제 = 137
유효성은 본래 갖추어진 것이 아니다 = 138
'IS-A'는 동작에 대한 것이다 = 138
계약에 의한 설계 = 139
단위 테스트에서의 계약 사항 구체화 = 140
실제 예 = 140
문제 제기 = 140
문제 = 142
LSP를 따르지 않는 해결책 = 144
LSP를 따르는 해결책 = 144
파생 대신 공통 인자 추출하기 = 145
휴리스틱과 협약 = 149
파생 클래스에서의 퇴화 함수 = 150
파생 클래스에서의 예외 발생 = 150
결론 = 150
11장 DIP : 의존 관계 역전 원칙 = 153
DIP : 의존 관계 역전 원칙 = 153
레이어 나누기 = 154
소유권의 역전 = 155
추상화에 의존하자 = 156
간단한 예 = 157
내재하는 추상화를 찾아서 = 158
용광로 사례 = 159
동적 다형성과 정적 다형성 = 161
결론 = 162
12장 ISP : 인터페이스 분리 원칙 = 163
인터페이스 오염 = 163
클라이언트 분리는 인터페이스 분리를 의미한다 = 165
클라이언트가 인터페이스에 미치는 반대 작용 = 165
ISP : 인터페이스 분리 원칙 = 166
클래스 인터페이스와 객체 인터페이스 = 166
위임을 통한 분리 = 167
다중 상속을 통한 분리 = 168
ATM 사용자 인터페이스 예 = 169
복합체와 단일체 = 174
결론 = 176
3절 급여 관리 사례 연구 = 177
급여 관리 시스템의 기본 명세 = 178
연습문제 = 179
13장 COMMAND 및 ACTIVE OBJECT 패턴 = 183
단순한 Command 적용 = 184
트랜잭션 = 185
물리적, 시간적 분리 = 187
시간적 분리 = 187
되돌리기 = 188
ACTIVE OBJECT 패턴 = 189
결론 = 194
14장 TEMPLATE METHOD 및 STRATEGY 패턴 : 상속과 위임 = 195
TEMPLATE METHOD = 196
패턴 오용 = 199
버블 정렬 = 200
STRATEGY 패턴 = 203
다시 정렬하기 = 206
결론 = 209
15장 FACADE 및 MEDIATOR 패턴 = 211
FACADE = 211
MEDIATOR = 212
결론 = 215
16장 SINGLETON 및 MONOSTATE 패턴 = 217
SINGLETON = 218
SINGLETON이 주는 이점 = 219
SINGLETON의 비용 = 220
동작에의 SINGLETON = 220
MONOSTATE = 222
MONOSTATE가 주는 이점 = 223
MONOSTATE의 비용 = 224
동작에서의 MONOSTATE = 224
결론 = 229
17장 NULL OBJECT 패턴 = 231
결론 = 234
18장 급여 관리 사례 연구 : 반복의 시작 = 235
소개 = 235
명세 = 235
유스케이스 분석 = 236
직원 추가 = 237
직원 삭제 = 239
타임카드를 기록한다 = 239
판매 영수증 기록하기 = 240
조합 서비스 요금 기록하기 = 241
직원 정보 변경 = 242
임금지불일 = 244
복습 : 무엇을 배웠는가 = 246
잠재적인 추상화를 찾아서 = 246
스케줄 추상화 = 246
지불 방법 = 248
소소단체 = 248
결론 = 249
19장 급여 관리 사례 연구 : 구현 = 251
직원 추가 = 252
급여 관리 데이터베이스 = 253
TEMPLATE METHOD를 사용하여 직원 추가하기 = 255
직원 삭제하기 = 258
전역 변수 = 260
타임카드, 판매 영수증, 서비스 요금 = 261
직원 변경 = 269
임금 종류 변경 = 274
무엇을 깨달았는가 = 280
직원에게 임금 지불하기 = 285
경영 관련 의사 결정을 해버리는 개발자를 원하는가 = 286
월급으로 받는 직원에게 임금 지불하기 = 287
시간제 직원에게 임금 지불하기 = 290
지불 주기 : 설계 문제 = 295
메인 프로그램 = 303
데이터베이스 = 304
급여 관리 설계의 요약 = 305
히스토리 = 305
4절 급여 관리 시스템 패키징 = 307
20장 패키지 설계의 원칙 = 309
패키지를 이용한 설계? = 309
단위 크기 : 패키지 응집성의 원칙 = 310
재사용-릴리즈 등가 원칙(REP) = 310
공통 재사용 원칙(CRP) = 312
공통 폐쇄 원칙(CCP) = 313
패키지 응집성에 대한 요약 = 314
안정성 : 패키지 결합의 원칙 = 314
의존 관계 비순환 원칙(ADP) = 314
주간 빌드 = 315
의존 관계 순환을 없애기 = 315
패키지 의존 관계 그래프에 순환이 있을 경우 = 317
순환을 끊기 = 318
패키지 구성의 흔들림 = 319
하향식 설계 = 320
안정된 의존 관계 원칙 = 320
안정성 = 321
안정성 측정법 = 322
모든 패키지가 안정적일 필요는 없다 = 324
높은 차원의 설계는 어디에 두어야 하는가 = 326
안정된 추상화 원칙(SAP) = 326
추상성을 측정하기 = 326
주계열 = 327
주계열로부터의 거리 = 329
결론 = 331
21장 FACTORY 패턴 = 333
의존 관계 순환 = 336
대체할 수 있는 팩토리 = 337
고정된 것을 테스트하기 위해 팩토리 사용하기 = 338
팩토리 사용이 얼마나 중요한가 = 340
결론 = 340
22장 급여 관리 사례 연구 = 341
패키지 구조와 표기법 = 342
공통 폐쇄 원칙(CCP) 적용하기 = 344
재사용 릴리즈 등가 원칙(REP) 적용하기 = 345
결합과 캡슐화 = 348
측정법 = 350
측정값을 급여 관리 애플리케이션에 적용하기 = 352
객체 팩토리 = 355
TransactionImplementation을 위한 객체 팩토리 = 355
팩토리 초기화 = 356
응집성의 경계를 다시 고려하기 = 357
최종 패키지 구조 = 358
결론 = 361
5절 기상 관측기 사례 연구 = 363
23장 COMPOSITE 패턴 = 365
예제 : 컴포지트 커맨드 = 366
다수성이냐 아니냐 = 367
24장 OBSERVER - 패턴으로 돌아가기 = 369
디지털 시계 = 369
결론 = 389
이 장에서의 다이어그램 사용 = 390
OBSERVER 패턴 = 390
OBSERVER는 어떻게 OOD의 원칙을 관리하는가 = 392
25장 ABSTRACT SERVER, ADAPTER, BRIDGE 패턴 = 395
ABSTRACT SERVER = 396
인터페이스는 누가 소유하는가 = 397
어댑터 = 398
클래스 형태의 어댑터 = 399
모뎀 문제, ADAPTER와 LSP = 399
BRIDGE = 404
결론 = 406
26장 PROXY와 STAIRWAY TO HEAVEN : 서드파티 API 관리 = 407
PROXY = 407
쇼핑 카트 프로그램에 PROXY 패턴 적용하기 = 413
PROXY 요약 = 427
데이터베이스, 미들웨어, 서드파티 인터페이스 다루기 = 427
STAIRWAY TO HEAVEN = 430
STAIRWAY TO HEAVEN의 예 = 431
데이터베이스와 함께 쓸 수 있는 그 밖의 패턴 = 438
결론 = 439
27장 사례 연구 : 기상 관측기 = 441
클라우드 컴퍼니 = 441
WMS-LC 소프트웨어 = 443
언어 선택 = 444
Nimbus-LC 소프트웨어 설계 = 444
지난 24시간 기록과 영속성 = 458
HiLo 알고리즘 구현 = 462
결론 = 471
Nimbus-LC 요구 사항 개괄 = 472
사용 요구 사항 = 472
24시간 기록 = 472
사용자 초기 설정 = 473
관리 요구 사항 = 473
Nimbus-LC 유스케이스 = 473
액터 = 473
유스케이스 = 474
계측값 기록 = 474
초기 설정 = 474
관리 = 474
Nimbus-LC 릴리즈 계획 = 475
소개 = 475
릴리즈 1 = 475
위험 = 476
인계물 = 476
릴리즈 2 = 476
구현된 유스케이스 = 477
위험 = 477
인계물 = 477
릴리즈 3 = 477
구현된 유스케이스 = 478
위험 = 478
인계물 = 478
6절 ETS 사례 연구 = 479
28장 VISITOR 패턴 = 481
디자인 패턴의 VISITOR 집합 = 482
VISITOR = 482
VISITOR는 행렬과 같다 = 487
ACYCLIC VISITOR = 487
ACYCLIC VISITOR는 희소 행렬과 같다 = 492
보고서 생성기에 VISITOR 사용 = 493
VISITOR의 다른 용도 = 500
DECORATOR = 500
다중 데코레이터 = 505
EXTENSION OBJECT = 506
결론 = 517
29장 STATE 패턴 = 519
유한 상태 오토마타의 개괄 = 519
구현 기법 = 521
중첩된 Switch/Case 문 = 521
전이표 해석 = 526
STATE 패턴 = 527
상태 머신 컴파일러(SMC) = 531
어떤 경우에 상태 머신을 사용해야 하는가 = 534
GUI에 대한 고차원의 애플리케이션 정책 = 535
GUI 상호작용 컨트롤러 = 536
분산 처리 = 537
결론 = 538
코드 목록 = 538
30장 ETS 프레임워크 = 547
소개 = 547
프로젝트 개요 = 547
1993년부터 1994년까지의 초창기 역사 = 549
프레임워크? = 550
프레임워크! = 550
1994년 팀 = 551
마감 시각 = 551
전략 = 551
결과 = 552
프레임워크 설계 = 554
채점 애플리케이션에 대한 공통된 요구 사항 = 554
채점 프레임워크의 설계 = 557
TEMPLATE METHOD의 사례 = 561
반복문을 단 한 번만 작성하기 = 562
수행 애플리케이션들에 대한 공통된 요구 사항 = 566
수행 프레임워크의 설계 = 567
작업감독자 아키텍처 = 574
결론 = 578
부록 = 579
A : UML 표기법 Ⅰ : CGI 예제 = 579
B : UML 표기법 Ⅱ : STATMUX = 607
C : 두 기업에 대한 풍자 = 630
D : 소스 코드는 곧 설계다 = 644
찾아보기 = 657
바이브 코딩 혁명이 온다 : AI 에이전트와 제로 코드 소사이어티의 탄생
005.133 김73ㅂ
(맥스 테그마크의) 라이프 3.0 : 인공지능이 열어갈 인류와 생명의 미래
006.301 T261ㄹ백
(2025) SQLD 모든 것 : #SQLD 14일 합격
005.7585 아68s
인문의 재발견
001.3 안73ㅇ
서평쓰기