목차
1부 패러다임의 변화
1 코바 입문에 앞서 = 4
1. 이런 사람에게 도움이 된다 = 4
2. 어떤 ORB 제품을 사용하고 있나 = 4
3. 어떤 플랫폼을 사용하고 있나 = 5
4. 코바 공부 어떻게 하는 것이 좋을까 = 6
2 컴퓨팅 패러다임 변화 = 9
1. 메인 프레임이 아닌 클라이언트/서버 환경으로 = 10
2. 다계층 클라이언트/서버 환경(미들웨어의 등장) = 11
1. 광역 미들웨어 = 13
2. 서비스 관련 미들웨어 = 15
3. 웹의 등장 = 16
1. 웹의 장점 = 16
2. 웹의 단점 = 17
4. 웹 애플리케이션 서버의 등장 = 19
5. 분산객체 기술의 종착역 = 20
2부 알고 넘어가자
3 시작하기 = 26
1. 시나리오 1 = 27
2. 시나리오 2 = 34
3. 시나리오 3 = 36
4. 시나리오 4 = 39
4 비지브로커 내막 살피기 = 43
1. 프로그램 그룹 = 43
2. 스마트 에이전트(OSAgent) = 44
1. 서버 정보 관리 = 45
2. 다른 도메인에 있는 OSAgent와 통신 = 47
3. Crossing the Subnet = 50
4. Fault-tolerance와 로드밸런싱 = 51
3. 스마트 파인더(osfind) = 54
4. IDL 컴파일러 = 55
5. 프로그램 디버깅 및 테스팅 = 55
6. 객체 활성화 데몬(Object Activation Daemon) = 57
7. 인터페이스 리포지터리 데몬(irep) = 57
8. 버전관련 정보보기(vbver) = 59
5 IDL(인터페이스 정의 언어) = 62
1. IDL 파일 작성하기 = 63
2. 인터페이스 = 64
1. 인터페이스 정의 = 64
2. attribute 선언 = 66
3. operation 선언 = 66
4. 리퀘스트 컨텍스트(Request Context) = 67
3. 인터페이스와 구조체 = 68
4. 예외선언 = 69
5. 모듈 = 69
6. 인터페이스와 C++ 클래스의 차이 = 70
7. 객체형과 데이터형 = 71
8. 데이터형 = 72
1. 기본 데이터형 = 72
2. 복합형 = 74
9. 리포지터리 ID = 77
6 코바의 구조 = 80
1. OMA(Object Management Architecture) = 81
2. 코바(Common Object Request Broker Architecture, CORBA) = 82
1. 스텁(stub)/DII(Dynamic Invocation Interface) = 83
2. 스켈레톤(skeleton)/DSI(Dynamic Skeleton Interface) = 83
3. 객체 어댑터(Object Adapter) = 84
4. ORB 인터페이스(ORB Interface) = 85
5. 인터페이스 저장소(Interface Repository) = 85
6. 구현 저장소(Implementation Repository) = 85
3부 C++ 자바프로그램
7 코바 C++ 프로그램 = 90
1. 따라하기 = 91
2. 프로그램 생성 및 실행 = 99
8 IDL C++ 매핑 = 104
1. IDL 컴파일러 활용 = 104
2. 인터페이스(객체형) = 106
1. 어트리뷰트 = 109
2. 오퍼레이션 = 110
3.상속 = 111
3. 모듈 = 112
4. 데이터형 = 112
1. 기본 데이터형 = 112
2. 복합형 = 114
9 코바 메모리 관리 = 120
1. 일반적인 규칙 = 121
1. 메모리 관리 요구 데이터 소유권 = 122
2. 간단한 예제로 살펴본 메모리 관리 = 122
3. 기본 데이터형 = 126
4. 문자열(string) = 126
5. 객체 레퍼런스 = 132
6. 시퀀스형 = 135
10 코바 자바 프로그램 = 146
1. 따라하기 = 147
2. 프로그램 생성 및 실행 = 154
11 IDL 자바 매핑 = 157
1. IDL 컴파일러 활용 = 157
2. 인터페이스(객체형) = 159
1. 어트리뷰트 = 159
2. 오퍼레이션 = 160
3. 상속 = 160
3. typedefs과 Constants = 161
4. 모듈 = 162
5. 데이터형 = 162
1. 기본 데이터형 = 162
2. 복합형 = 163
6. IDL 자바 매핑 정리 = 170
12 예외 처리 = 174
1. 코바 예외 = 175
1. 시스템 예외 = 175
2. 사용자 정의 예외 = 176
2. 따라하기 = 183
1. C++ 프로그램 = 183
2. 자바 프로그램 = 185
13 Any 타입 전송 = 189
1. Any 타입 = 190
1. Any 타입 생성 = 191
2. Any 타입에 값 입력 및 출력 = 191
3. Any 타입에 담겨진 데이터의 TypeCode 정보 알아내기 = 194
2. 따라하기 1 (Any를 이용한 문자열 전송) = 196
3. 따라하기 2 (Any를 이용한 구조체 전송) = 201
14 한글처리에 대하여 = 209
1. 따라하기 1 (한글 문자열을 전송) = 210
2. 따라하기 2 (자바와 C++ 간 한글 전송) = 215
1. 코바 서버(자바) = 215
2. 코바 클라이언트(C++) = 217
3. 프로그램 실행 = 221
15 오빅스 프로그래밍 = 224
1. 오빅스 = 225
1. 설치 = 225
2. 오빅스로 시작하기 = 227
2. 따라하기 = 228
1. 환경설정 = 228
2. 코바 서버 = 230
3. 코바 클라이언트 = 234
4. 프로그램 실행 = 237
16 OAD 활용 = 239
1. OAD 운영 = 240
1. 사용 방법 = 240
2. 객체의 등록 및 삭제 = 240
3. osfind로 객체 정보를 알아낸 후 등록하기 = 241
4. oadutil list 이용 = 242
5. 객체 활성화 메커니즘 = 243
6. 활성화 정책 = 244
2. 따라하기 1 (객체 등록) = 244
3. 따라하기 2 (객체 리스트 보기) = 246
17 파일 전송 = 249
1. 따라하기 = 250
1. 코바 서버 = 250
2. 코바 클라이언트 = 255
2. 프로그램 실행 = 260
4부 개발툴 활용하기
18 Visual C++ 활용 = 266
1. 환경설정 = 267
2. 따라하기 = 269
1. 코바 서버(콘솔모드) = 269
2. 코바 서버(GUI모드) = 275
3. 코바 서버(멀티쓰레드) = 278
4. 코바 클라이언트 = 280
5. 프로그램 실행 = 283
19 C++ Builder 활용 = 286
1. 따라하기 = 287
1. 코바 서버 = 287
2. 코바 클라이언트(GUI) = 291
3. 코바 클라이언트(make이용) = 296
2. 프로그램 실행 = 300
20 JBuilder의 활용 = 303
1. 애플리케이션 생성기 활용 방법 = 304
1. 샘플 프로그램 작성 = 304
2. 프로그램 실행 = 308
2. 따라하기 = 310
1. 코바 서버 = 310
2. 코바 클라이언트(애플리케이션) = 316
3. 코바 클라이언트(애플릿) = 321
4. 플그램 실행 = 324
21 델파이 활용 = 329
1. 따라하기 1 = 331
1. 코바 클라이언트 = 331
2. 프로그램 실행 = 335
2. 따라하기 2 = 337
1. 코바 서버 = 337
2. 코바 클라이언트 = 339
3. 따라하기 3 = 341
1. 코바 서버 = 341
2. 코바 클라이언트 = 343
22 Visual Basic 활용 = 347
1. 따라하기 = 348
1. 하나의 프로세스에 서버와 클라이언트 합하기 = 348
2. 사용자 인터페이스 = 354
2. 프로그램 실행 = 356
5부 시스템 연동
23 오빅스와 비지브로커 연동 = 362
1. 상호 운용성 = 363
1. 서로 다른 ORB간의 통신 = 363
2. ORB간 브릿지 = 365
3. GIOP = 366
4. IIOP = 367
5. 상호 운용 가능한 객체 레퍼런스(IOR) = 367
2. 따라하기 = 368
3. 따라하기 = 371
1. 오빅스와 비지브로커 연동프로그램 = 371
2. 프로그램 생성 및 실행 = 377
24 웹과 코바의 연동 = 381
1. 웹과 코바의 연동에 대한 이야기 = 382
1. 웹의 기본적인 동작원리 = 382
2. 웹과 관련된 기술 = 382
3. 웹과 코바의 연동 = 386
2. 따라하기 1 (CGI와 코바 연동) = 391
1. 코바 클라이언트 = 392
2. 프로그램 실행 = 397
3. 따라하기 2 (애플릿과 코바 연동) = 398
1. 프로그램 작성 = 398
2. 프로그램 실행 = 403
4. 따라하기 3 (서블릿과 코바 연동) = 403
1. JSDK설치 = 404
2. 웹서버 설치 = 405
3. 코바 클라이언트 = 406
4. 프로그램 실행 = 408
5. 따라하기 4 (ISAPI와 코바 연동) = 409
1.코바 클라이언트 = 409
2. 프로그램 실행 = 414
25 DBMA와 코바의 연동 = 418
1. 따라하기 1 (ODBC와 코바 연동) = 419
1. 데이터베이스 작성 = 419
2. 환경설정 = 419
3. 코바 서버 = 421
4. 코바 클라이언트 = 427
5. 프로그램 실행 = 434
2. 따라하기 2 ( JDBC와 코바 연동) = 435
1. JDBC 살피기 = 436
2. 코바 서버 = 440
3. 따라하기 3 ( Pro*C와 코바 연동) = 448
1. 테이블 생성 = 448
2. 코바 서버 = 449
3. 코바 클라이언트 = 459
4. 프로그램 실행 = 467
26 RMI-IIOP 프로그램 = 470
1. RMI-IIOP = 471
1. 프로그램 설치 = 471
2. 프로그램 삭제 = 473
3. 환경설정 = 474
4. 환경테스트 및 보안 설정 = 475
2. 따라하기 = 475
1. 서버 프로그램 = 475
2. 클라이언트 프로그램 = 478
3. 프로그램 생성 및 실행 = 481
27 기존 시스템 통합 = 484
1. 레거시 코드가 3GL 언어를 사용한 경우 = 485
2. 4GL을 사용하여 시스템이 2Tier로 구축된 경우 = 486
3. COM/DCOM으로 구축된 경우 = 486
4. RPC로 구축된 경우 = 487
5. 다른 ORB 제품으로 미리 시스템을 구축한 경우 = 488
6. 자바 ORB와 비지브로커 연동 = 488
6부 코바 중급 프로그래밍
28 동적호출 인터페이스(Dynamic Invocation Interface, DII) = 494
1. 동적호출 인터페이스 = 495
1. 어떤 경우에 사용하는가? = 495
2. Dll 프로그래밍 순서 = 496
2. 따라하기 = 502
1. DII 클라이언트 (C++) = 502
2. DII 클라이언트 (자바) = 507
29 동적 스켈레톤 인터페이스(Dynamic Skeleton Interface, DSI) = 510
1. 동적 스켈레톤 인터페이스 = 511
2. 따라하기 = 512
30 콜백 서비스 = 517
1. 따라하기 = 518
1. 콜백 서버 = 518
2. 콜백 클라이언트 = 524
2. 프로그램 실행 = 528
31 네이밍 서비스 = 531
1. 따라하기 1 = 533
1. 네이밍 서비스 C++ 프로그램 = 533
2. 프로그램 생성 및 실행 = 537
2. 따라하기 2 = 539
1. URL 네이밍 서비스 프로그램 = 539
2. 프로그램 생성 및 실행 = 544
32 이벤트 서비스 = 547
1. 환경설정 = 548
2. 따라하기 = 549
1. 이벤트 서버 = 549
2. 이벤트 클라이언트 = 554
3. 프로그램 실행 = 559
33 카페인(Caffeine) = 562
1. java2iiop 컴파일러 = 563
2. java2idl 컴파일러 = 564
1. 기본 타입 = 564
2. 인터페이스 = 565
3. 배열 = 565
4. 자바 클래스 = 566
5. 이외의 자바 클래스 및 인터페이스 = 566
3. 따라하기 = 567
7부 코바 경쟁자
34 자바 ORB 프로그램 = 572
1. 환경설정 = 573
2. 따라하기 = 573
1. 자바 ORB 계산기 프로그램 = 573
2. 프로그램 생성 및 실행 = 583
35 COM 프로그램 = 586
1. 따라하기 = 587
1. COM 서버 = 587
2. COM 클라이언트 = 590
2. 프로그램 실행 = 593
36 RMI 프로그램 = 596
1. RMI 아키텍쳐 = 597
2. 환경설정 = 598
3. 따라하기 = 600
1. RMI 계산기 프로그램 = 600
2. 프로그램 생성 및 실행 = 603
37 소켓 프로그램 = 608
1. 따라하기 = 609
1. 소켓 서버 = 609
2. 소켓 클라이언트 = 611
2. 프로그램 생성 및 실행 = 613
부록
38 비지브로커 설치 = 618
1. 설치에 앞서 = 618
2. 네트워크 설정 = 620
3. 비지브로커 C++ 설치 = 621
4. JDK 설치 및 테스트 = 625
5. 비지브로커 자바 설치 = 628
6. 비지브로커 삭제 = 632
7. 비지브로커 설치(유닉스) = 633
39 샘플 프로그램 = 637
1. 자바 샘플 = 637
1. 서버 = 637
2. 문자열 전송 프로그램 = 638
3. 문자열 리스트 전송 프로그램 = 641
4. 고정크기의 배역 전송 프로그램 = 645
5. 가변크기의 배역 전송 프로그램 = 649
6. 고정크기의 구조체 전송 프로그램 = 652
7. 가변크기의 구조체 전송 프로그램 = 655
8. 옥텟(octet) 전송 프로그램 = 658
9. 옥텟(octet) 시퀀스 전송 프로그램 = 660
10. 객체 전송 프로그램 = 662
2. C++ 샘플 = 666
1. 문자열 전송 프로그램 = 666
2. 문자열 리스트 전송 프로그램 = 669
3. 고정 크기의 배열 전송 프로그램 = 673
4. 가변 크기의 배열 전송 프로그램 = 677
5. 고정 크기의 배열 전송 프로그램 = 682
6. 가변 크기의 배열 전송 프로그램 = 686
7. 옥텟(octet) 전송 프로그램 = 689
8. 옥텟(octet) 시퀀스 전송 프로그램 = 692