Top

[IDE와 RCP에서 활용하는]
이클립스 플러그인 개발서 세트

  • 지은이에릭 클레이버그, 댄 루벨, Jeff McAffer, Jean-Michel Lemieux
  • ISBN : 9788960770348
  • 66,000원
  • 2008년 02월 26일 펴냄 (절판)
  • 페이퍼백 | 1,392쪽 | 190*255mm
  • 시리즈 : 이클립스 프로페셔널

판매처

  • 현재 이 도서는 구매할 수 없습니다.

책 소개

이클립스 플랫폼 개발자를 위한 필독서

『이클립스 실전 플러그인 개발』

이클립스를 심도 있게 이해하고 싶은 개발자,
이클립스를 확장하려는 중급 이상 개발자 모두를 위한 필독서!

상용 제품 수준의 이클립스 플러그인을 개발하는 과정을 처음부터 끝까지 상세하게 다루고 있으며, 특히 고객의 요구를 만족할 수 있도록 세련되게 다듬는 방법을 강조하고 있다. 이클립스를 처음 사용하는 독자를 위해 잘 요약된 개발도구 사용법을 제공할 뿐만 아니라, 이클립스에 익숙한 독자에게는 이클립스 플랫폼에 대한 다양한 지식이 담긴 참고서 역할을 함으로써 이클립스 기반 제품의 품질 향상을 돕는다.

『이클립스 RCP』

이클립스가 제공하는 리치 클라이언트 플랫폼(RCP) 플러그인은 채팅 애플리케이션부터 기업용 소프트웨어 클라이언트까지 다양한 데스크탑 애플리케이션의 기반으로 사용할 수 있는 훌륭한 플랫폼이다. 『이클립스 RCP』에서는 이클립스 RCP 프로젝트를 이끌고 있는 두 명의 리더가 이클립스를 사용해서 빠르고 효율적으로 크로스플랫폼 데스크탑 애플리케이션을 개발하는 방법을 설명한다.

저자/역자 소개

[ 저자 소개 ]

에릭 클레이버그
에릭 클레이버그는 Instantiations사의 제품 개발 부문 부사장이다. 에릭은 17년간의 상용 소프트웨어 개발 경험이 있으며 그 중 9년은 자바, 6년은 이클립스를 경험해 온 숙련된 소프트웨어 기술자이자 제품 개발자, 기업가, 관리자이다. 또한 윈도우빌더 프로(WindowBuilder Pro), 코드프로(CodePro), 수상작인 VA 어시스트(VA Assist) 제품 계열 등 다양한 상용 자바/스몰토크 확장 기능 제품의 주요 개발자이자 아키텍트이다. MIT 학사, 하버드 MBA 학위를 가지고 있으며 성공적인 소프트웨어 회사인 ObjectShare와 Instantiations의 공동 창업자이다.

댄 루벨
댄 루벨은 Instantiations사의 수석 연구원이다. 그는 17년간 상용 소프트웨어를 개발해 왔으며 그 중 10년은 자바, 6년은 이클립스를 경험해 온 객체 지향 기술 디자인/적용 전문가이며 기업가이다. 그는 jFactor, jKit/GO, jKit/Grid 등 몇몇 성공적인 상용 제품의 핵심 아키텍트이면서 제품 관리자로서 윈도우빌더 프로(WindowBuilder Pro), VA 어시스트(VA Assist), 코드프로(CodePro) 등의 상용 제품 설계와 리더 역할을 맡아 수행한 바 있다. 버크넬 학사 학위를 갖고 있으며 Instantiations의 공동창업자이다.

Instantiations는 어드밴스드 IBM 비즈니스 파트너 중 하나이며 이클립스와 IBM 비주얼에이지(VisualAge), 웹스피어(WebSphere), 래쇼날(Rational) 제품 계열에 대한 다수의 상용 확장 기능을 개발했다. Instantiations는 이클립스 연합의 멤버이며 이클립스 협업 도구 프로젝트(Koi)와 이클립스 폴리네이트 프로젝트(Beehive)를 담당하는 이클립스 오픈소스의 기여자이다.

Jeff McAffer
이클립스 RCP와 런타임 팀을 이끌고 있으며, 이클립스 플랫폼의 초기 설계자이자 커미터이다. Object Techonology International에서 분산/병렬 객체지향 컴퓨팅, 익스퍼트 시스템, 메타레벨 구조 등의 개발 업무를 맡았으며, 지금은 IBM 오타와 소프트웨어 연구소에서 일하고 있다.

Jean-Michel Lemieux
이클립스 팀/CVS 컴포넌트 프로젝트에서 초기부터 커미터로 활동하고 있다. IBM 오타와 소프트웨어 연구소에서 실시간 SS7 모니터링 시스템과 실시간 모델링 도구, 이클립스 개발에 참여했다.


[ 역자 소개 ]

양석호
KAIST 전산과를 졸업하고 웹, 모바일, 임베디드, 자바 GUI 애플리케이션 등의 다양한 프로젝트를 수행했으며 현재는 NHN에서 일본 검색서비스 개발 업무를 맡고 있다. 에이콘 이클립스 프로페셔널 시리즈 에디터를 맡아 『이클립스 RCP:설계에서 구현, 배포까지, 자바 GUI 애플리케이션 개발의 모든 것』을 번역하는 등 양질의 이클립스 관련서를 독자들에게 소개하는 데 큰 보람을 느끼고 있다. 또한 2005년부터 네이버 이클립스 플러그인 까페(http://cafe.naver.com/eclipseplugin)를 운영하며 점점 늘어가는 이클립스 플러그인 개발자들과 함께 이클립스 기술 전파에 노력하고 있다.

목차

목차
  • 『이클립스 실전 플러그인 개발』
  • 1장 이클립스 개발도구 사용하기 1
    • 1.1 시작하기 1
      • 1.1.1 이클립스 얻기 1
      • 1.1.2 설치 3
    • 1.2 이클립스 워크벤치 3
      • 1.2.1 퍼스펙티브, 뷰, 편집기 5
        • 1.2.1.1 Java 퍼스펙티브 7
        • 1.2.1.2 자원 퍼스펙티브 8
        • 1.2.1.3 디버그 퍼스펙티브 10
      • 1.2.2 액션 11
        • 1.2.2.1 최상위 메뉴 11
        • 1.2.2.2 컨텍스트 메뉴 12
        • 1.2.2.3 툴바 13
        • 1.2.2.4 액션의 사용 여부 변경 14
    • 1.3 개발환경 꾸미기 14
      • 1.3.1 워크벤치 환경설정 15
      • 1.3.2 자바 환경설정 17
      • 1.3.3 환경설정 가져오기/내보내기 18
    • 1.4 프로젝트 생성 19
      • 1.4.1 새 자바 프로젝트 마법사 사용하기 19
      • 1.4.2 .classpath 파일과 .project 파일 22
      • 1.4.3 자바 패키지 마법사 사용하기 24
      • 1.4.4 자바 클래스 마법사 사용하기 24
    • 1.5 탐색 25
      • 1.5.1 타입 열기 대화창 26
      • 1.5.2 타입 계층구조 뷰 26
      • 1.5.3 행으로 이동 27
      • 1.5.4 아웃라인 뷰 28
    • 1.6 검색 28
      • 1.6.1 파일 검색 28
      • 1.6.2 자바 검색 30
      • 1.6.3 기타 검색 메뉴 옵션 32
      • 1.6.4 작업 세트 32
    • 1.7 코드 작성 34
      • 1.7.1 자바 편집기 34
        • 1.7.1.1 색상 적용 문법 강조 35
        • 1.7.1.2 사용자 정의 코드 포맷 적용 36
        • 1.7.1.3 자바 가져오기 구문 구성하기 36
        • 1.7.1.4 컨텍스트 감지 코드 자동완성 37
        • 1.7.1.5 ‘빠른 수정’ 문제점 자동 교정 38
      • 1.7.2 템플릿 39
      • 1.7.3 리팩토링 41
      • 1.7.4 로컬 히스토리 44
      • 1.7.5 파일 확장자 연관 46
    • 1.8 CVS를 사용한 팀 개발 48
      • 1.8.1 CVS 시작하기 49
      • 1.8.2 CVS에서 프로젝트 체크아웃 50
      • 1.8.3 저장소와 동기화하기 51
      • 1.8.4 리소스 비교 및 치환 52
      • 1.8.5 CVS 레이블 데코레이터 53
    • 1.9 애플리케이션 실행 54
      • 1.9.1 자바 애플리케이션 실행 54
      • 1.9.2 실행 구성 56
    • 1.10 디버깅 58
      • 1.10.1 중단점 설정 58
      • 1.10.2 디버그 뷰 사용하기 59
      • 1.10.3 변수 뷰 사용하기 60
      • 1.10.4 표현식 뷰 사용하기 60
    • 1.11 단위 테스트 61
      • 1.11.1 테스트 케이스 생성 61
      • 1.11.2 테스트 케이스 실행 62
    • 1.12 요약 63
    • 1.13 참고자료 64
  • 2장 간단한 플러그인 예제 65
    • 2.1 Favorites 플러그인 65
    • 2.2 플러그인 프로젝트 생성 66
      • 2.2.1 새 플러그인 프로젝트 마법사 66
      • 2.2.2 플러그인 정의 67
      • 2.2.3 뷰 정의 69
    • 2.3 생성된 코드 둘러보기 70
      • 2.3.1 플러그인 내역서 70
      • 2.3.2 플러그인 클래스 77
      • 2.3.3 Favorites 뷰 78
    • 2.4 제품 빌드 81
      • 2.4.1 직접 빌드하기 81
      • 2.4.2 아파치 Ant로 빌드하기 83
    • 2.5 제품 설치와 실행 86
    • 2.6 제품 디버깅 88
      • 2.6.1 실행 구성 생성 88
      • 2.6.2 플러그인과 프래그먼트 선택 89
      • 2.6.3 런타임 워크벤치 실행 90
    • 2.7 PDE 뷰 90
      • 2.7.1 플러그인 레지스트리 뷰 90
      • 2.7.2 플러그인 뷰 91
      • 2.7.3 플러그인 종속성 뷰 91
    • 2.8 플러그인 테스트 작성 92
      • 2.8.1 테스트 준비 92
      • 2.8.2 플러그인 테스트 프로젝트 생성 92
      • 2.8.3 플러그인 테스트 생성 93
      • 2.8.4 플러그인 테스트 실행 97
      • 2.8.5 Favorites 플러그인 설치 제거 98
    • 2.9 요약 98
    • 2.10 참고자료 99
  • 3장 이클립스 기반구조 101
    • 3.1 기반구조 개요 101
      • 3.1.1 플러그인 구조 102
      • 3.1.2 작업공간 104
    • 3.2 플러그인 디렉토리와 JAR 파일 104
      • 3.2.1 링크 파일 105
      • 3.2.2 혼합 방식 106
    • 3.3 플러그인 내역서 107
      • 3.3.1 플러그인 선언 108
        • 3.3.1.1 플러그인 ID 108
        • 3.3.1.2 플러그인 버전 108
        • 3.3.1.3 플러그인 이름과 제공자 108
        • 3.3.1.4 플러그인 클래스 선언 109
      • 3.3.2 플러그인 런타임 110
      • 3.3.3 플러그인 종속성 110
      • 3.3.4 확장과 확장점 112
    • 3.4 플러그인 클래스 114
      • 3.4.1 시동과 종료 114
      • 3.4.2 플러그인 이른 시동하기 115
      • 3.4.3 정적 플러그인 리소스 115
      • 3.4.4 플러그인 환경설정 116
      • 3.4.5 플러그인 구성 파일 116
      • 3.4.6 Plugin과 AbstractUIPlugin 118
    • 3.5 플러그인 모델 119
      • 3.5.1 Platform 119
      • 3.5.2 플러그인과 번들 120
      • 3.5.3 플러그인 확장 레지스트리 121
    • 3.6 로깅 122
      • 3.6.1 상태 객체 123
      • 3.6.2 오류 로그 뷰 124
    • 3.7 이클립스 플러그인 124
    • 3.8 요약 125
    • 3.9 참고자료 126
  • 4장 SWT 127
    • 4.1 SWT 역사와 목적 127
    • 4.2 SWT 위젯 130
      • 4.2.1 간단한 독립실행형 애플리케이션 예제 130
        • 4.2.1.1 프로젝트 클래스 경로에 SWT 추가 130
        • 4.2.1.2 독립실행형 SWT 코드 131
        • 4.2.1.3 예제 실행 133
      • 4.2.2 위젯 생명주기 134
      • 4.2.3 위젯 이벤트 134
      • 4.2.4 추상 위젯 클래스 136
        • 4.2.4.1 Widget 136
        • 4.2.4.2 Control 137
        • 4.2.4.3 Scrollable 140
      • 4.2.5 최상위 클래스 140
        • 4.2.5.1 디스플레이 140
        • 4.2.5.2 Shell 142
      • 4.2.6 주요 위젯 143
        • 4.2.6.1 Label 144
        • 4.2.6.2 Button 144
        • 4.2.6.3 Text 146
        • 4.2.6.4 List 149
        • 4.2.6.5 Combo 151
        • 4.2.6.6 Table 154
        • 4.2.6.7 Tree 158
        • 4.2.6.8 Composite 161
        • 4.2.6.9 Group 163
        • 4.2.6.10 TabFolder 164
      • 4.2.7 Menu 166
    • 4.3 레이아웃 관리 170
      • 4.3.1 FillLayout 170
      • 4.3.2 RowLayout 171
      • 4.3.3 GridLayout 174
      • 4.3.4 FormLayout 177
    • 4.4 자원 관리 180
      • 4.4.1 색상 180
      • 4.4.2 폰트 180
      • 4.4.3 이미지 181
    • 4.5 요약 181
    • 4.6 참고자료 182
  • 5장 JFace 뷰어 185
    • 5.1 리스트 지향 뷰어 185
      • 5.1.1 레이블 프로바이더 186
      • 5.1.2 컨텐트 프로바이더 188
      • 5.1.3 뷰어 정렬자 189
      • 5.1.4 뷰어 필터 190
      • 5.1.5 StructuredViewer 클래스 190
      • 5.1.6 ListViewer 클래스 192
      • 5.1.7 TableViewer 클래스 195
      • 5.1.8 TreeViewer 클래스 199
    • 5.2 TextViewer 203
    • 5.3 요약 206
    • 5.4 참고자료 206
  • 6장 액션 207
    • 6.1 IAction과 IActionDelegate 비교 207
    • 6.2 워크벤치 윈도우 액션 209
      • 6.2.1 워크벤치 윈도우 메뉴 정의 209
      • 6.2.2 메뉴 내의 그룹 212
      • 6.2.3 메뉴 항목과 툴바 버튼 정의 212
      • 6.2.4 액션 이미지 214
      • 6.2.5 삽입점 215
      • 6.2.6 액션 위임자 작성 216
        • 6.2.6.1 selectionChanged 메소드 218
        • 6.2.6.2 run 메소드 218
      • 6.2.7 새 액션 직접 테스트하기 219
      • 6.2.8 새 액션에 대한 테스트 추가 220
      • 6.2.9 논의 222
    • 6.3 객체 액션 224
      • 6.3.1 객체 기반 액션 정의 224
      • 6.3.2 액션 필터와 사용 여부 지정 227
        • 6.3.2.1 기본 필터와 사용 여부 지정 227
        • 6.3.2.2 visibility 요소 227
        • 6.3.2.3 filter 요소 229
        • 6.3.2.4 selection 요소 230
        • 6.3.2.5 enablement 요소 231
        • 6.3.2.6 컨텍스트 감지 객체 컨트리뷰션 232
      • 6.3.3 IObjectActionDelegate 233
      • 6.3.4 객체 기반 서브 메뉴 작성 234
      • 6.3.5 새로운 액션 수동 테스트 234
      • 6.3.6 새로운 액션에 대한 테스트 추가 235
    • 6.4 뷰 액션 237
      • 6.4.1 뷰 컨텍스트 서브 메뉴 정의 237
      • 6.4.2 뷰 컨텍스트 메뉴 액션 정의 238
      • 6.4.3 IViewActionDelegate 239
      • 6.4.4 뷰 툴바 액션 정의 240
      • 6.4.5 뷰 풀다운 서브 메뉴와 액션 정의 241
      • 6.4.6 새 액션 직접 테스트 242
      • 6.4.7 새 액션에 대한 테스트 추가 242
      • 6.4.8 뷰 컨텍스트 메뉴 식별자 242
    • 6.5 편집기 액션 244
      • 6.5.1 편집기 컨텍스트 메뉴 정의 245
      • 6.5.2 편집기 컨텍스트 액션 정의 246
      • 6.5.3 IEditorActionDelegate 247
      • 6.5.4 편집기 최상위 메뉴 정의 247
      • 6.5.5 편집기 최상위 액션 정의 248
      • 6.5.6 편집기 툴바 액션 정의 249
      • 6.5.7 새 액션에 대한 테스트 추가 250
      • 6.5.8 편집기 컨텍스트 메뉴 식별자 250
    • 6.6 키 바인딩 251
      • 6.6.1 카테고리 252
      • 6.6.2 커맨드 252
      • 6.6.3 키 바인딩 253
      • 6.6.4 액션에 커맨드 연관시키기 255
      • 6.6.5 키보드 접근성 255
    • 6.7 RFRS 고찰 257
      • 6.7.1 전역 액션 레이블 (RFRS 5.3.5.1) 257
    • 6.8 요약 257
    • 6.9 참고자료 258
  • 7장 뷰 259
    • 7.1 뷰 선언 261
      • 7.1.1 뷰 카테고리 선언 261
      • 7.1.2 뷰 선언 262
    • 7.2 뷰 파트 263
      • 7.2.1 뷰 메소드 263
      • 7.2.2 뷰 컨트롤 264
      • 7.2.3 뷰 모델 265
      • 7.2.4 컨텐트 프로바이더 276
      • 7.2.5 레이블 프로바이더 277
      • 7.2.6 뷰어 정렬자 278
      • 7.2.7 뷰어 필터 281
      • 7.2.8 뷰 선택항목 283
    • 7.3 뷰 액션 283
      • 7.3.1 모델 액션 283
      • 7.3.2 컨텍스트 메뉴 284
        • 7.3.2.1 액션 작성 284
        • 7.3.2.2 컨텍스트 메뉴 작성 285
        • 7.3.2.3 컨텍스트 메뉴 동적 빌드 286
        • 7.3.2.4 선택사항 프로바이더 286
        • 7.3.2.5 원치 않는 액션에 필터 적용 286
      • 7.3.3 툴바 버튼 287
      • 7.3.4 풀다운 메뉴 287
      • 7.3.5 키보드 액션 289
      • 7.3.6 전역 액션 289
      • 7.3.7 클립보드 액션 290
        • 7.3.7.1 복사 290
        • 7.3.7.2 잘라내기 292
        • 7.3.7.3 붙여넣기 293
      • 7.3.8 드래그 앤 드롭 지원 294
        • 7.3.8.1 Favorites 뷰 밖으로 객체 드래그 294
        • 7.3.8.2 Favorites 뷰 안으로 객체 드래그 296
        • 7.3.8.3 전송 타입 직접 정의하기 298
      • 7.3.9 인라인 편집 301
    • 7.4 뷰 연결 306
      • 7.4.1 선택사항 프로바이더 306
      • 7.4.2 적응 가능 객체 306
      • 7.4.3 선택사항 리스너 307
      • 7.4.4 편집기 열기 308
    • 7.5 뷰 상태 저장 309
      • 7.5.1 지역 뷰 정보 저장 309
      • 7.5.2 전역 뷰 정보 저장 312
    • 7.6 테스트 315
    • 7.7 이미지 캐시 315
    • 7.8 테이블 열 크기 자동 조정 317
    • 7.9 RFRS 고찰 319
      • 7.9.1 내비게이션 목적의 뷰 (RFRS 3.5.15) 319
      • 7.9.2 뷰는 즉시 저장한다 (RFRS 3.5.16) 320
      • 7.9.3 뷰 초기화 (RFRS 3.5.17) 320
      • 7.9.4 뷰 전역 액션 (RFRS 3.5.18) 321
      • 7.9.5 뷰 상태 보존 (RFRS 3.5.19) 321
      • 7.9.6 컨텍스트 메뉴 등록 (RFRS 5.3.5.8) 321
      • 7.9.7 뷰에 대한 액션 필터 (RFRS 5.3.5.9) 322
    • 7.10 요약 323
    • 7.11 참고자료 323
  • 8장 편집기 325
    • 8.1 편집기 선언 326
    • 8.2 편집기 파트 330
      • 8.2.1 편집기 메소드 330
      • 8.2.2 편집기 컨트롤 332
      • 8.2.3 편집기 모델 335
      • 8.2.4 컨텐트 프로바이더 341
      • 8.2.5 레이블 프로바이더 342
    • 8.3 편집 344
      • 8.3.1 셀 편집기 344
      • 8.3.2 셀 모디파이어 345
      • 8.3.3 변경 리스너 347
      • 8.3.4 셀 밸리데이터 348
      • 8.3.5 편집과 선택 349
    • 8.4 편집기 생명주기 350
      • 8.4.1 수정사항이 있는 편집기 351
      • 8.4.2 페이지 전환 352
      • 8.4.3 컨텐츠 저장 353
    • 8.5 편집기 액션 354
      • 8.5.1 컨텍스트 메뉴 354
        • 8.5.1.1 액션 생성 354
        • 8.5.1.2 컨텍스트 메뉴 작성 355
        • 8.5.1.3 컨텍스트 메뉴 동적 구성 356
      • 8.5.2 편집기 컨트리뷰터 357
        • 8.5.2.1 전역 액션 358
        • 8.5.2.2 최상위 메뉴 360
        • 8.5.2.3 툴바 버튼 361
        • 8.5.2.4 키보드 액션 361
      • 8.5.3 실행 취소/다시 실행 361
      • 8.5.4 클립보드 액션 369
    • 8.6 편집기 연결 369
    • 8.7 RFRS 고찰 369
      • 8.7.1 편집 또는 열람에는 편집기 사용 (RFRS 3.5.9) 369
      • 8.7.2 편집기 생명주기 (RFRS 3.5.10) 370
      • 8.7.3 전역 액션 접근하기 (RFRS 3.5.11) 371
      • 8.7.4 객체를 삭제했을 때 닫기 (RFRS 3.5.12) 371
      • 8.7.5 외부 변경사항 동기화 (RFRS 3.5.14) 371
      • 8.7.6 편집기 메뉴 등록 (RFRS 5.3.5.2) 372
      • 8.7.7 편집기 액션 필터 (RFRS 5.3.5.3) 372
      • 8.7.8 저장되지 않은 편집기 수정사항 (RFRS 5.3.5.4) 373
      • 8.7.9 변경된 리소스에 접두사 붙이기 (RFRS 5.3.5.5) 373
      • 8.7.10 편집기 아웃라인 뷰 (RFRS 5.3.5.6) 373
      • 8.7.11 아웃라인 뷰 동기화 (RFRS 5.3.5.7) 374
    • 8.8 요약 374
    • 8.9 참고자료 374
  • 9장 리소스 변경 추적 375
    • 9.1 IResourceChangeListener 375
      • 9.1.1 IResourceChangeEvent 376
      • 9.1.2 IResourceDelta 377
    • 9.2 변경 이벤트 처리 379
    • 9.3 변경 이벤트 일괄처리 382
    • 9.4 진행 모니터 383
      • 9.4.1 IProgressMonitor 383
      • 9.4.2 진행 출력에 관련된 클래스 384
      • 9.4.3 워크벤치 윈도우 상태 표시줄 385
      • 9.4.4 IProgressService 386
    • 9.5 지연된 변경 이벤트 387
    • 9.6 요약 388
    • 9.7 참고자료 388
  • 10장 퍼스펙티브 389
    • 10.1 퍼스펙티브 작성 389
      • 10.1.1 퍼스펙티브 확장점 390
      • 10.1.2 퍼스펙티브 팩토리 392
      • 10.1.3 IPageLayout 395
    • 10.2 기본 퍼스펙티브 개선 396
      • 10.2.1 뷰와 위치지정자 추가 398
      • 10.2.2 바로가기 추가 400
      • 10.2.3 액션 세트 추가 402
    • 10.3 RFRS 고찰 403
      • 10.3.1 장시간 소요 작업을 위한 퍼스펙티브 생성 (RFRS 5.3.5.10) 403
      • 10.3.2 기존 퍼스펙티브 확장 (RFRS 5.3.5.11) 403
      • 10.3.3 윈도우 메뉴에 액션 추가 (RFRS 5.3.5.15) 404
    • 10.4 요약 404
    • 10.5 참고자료 404
  • 11장 대화창과 마법사 405
    • 11.1 대화창 405
      • 11.1.1 SWT 대화창과 JFace 대화창 비교 406
      • 11.1.2 주요 SWT 대화창 406
      • 11.1.3 주요 JFace 대화창 407
      • 11.1.4 JFace 대화창 작성 409
      • 11.1.5 대화창 단위 412
      • 11.1.6 기본 대화창 위치와 크기 413
      • 11.1.7 크기 변경 가능한 대화창 413
      • 11.1.8 Favorites 뷰 필터 대화창 415
      • 11.1.9 세부사항 대화창 420
      • 11.1.10 대화창 열기-부모 셸 찾기 427
    • 11.2 마법사 429
      • 11.2.1 IWizard 430
      • 11.2.2 IWizardPage 432
      • 11.2.3 IWizardContainer 433
      • 11.2.4 중첩된 마법사 434
      • 11.2.5 마법사 실행 434
        • 11.2.5.1 마법사 확장점 434
        • 11.2.5.2 마법사 직접 실행하기 438
      • 11.2.6 마법사 예제 438
      • 11.2.7 대화창 설정 439
      • 11.2.8 선택사항 기반 페이지 컨텐츠 440
      • 11.2.9 이전 페이지 기반 페이지 컨텐츠 445
    • 11.3 RFRS 고찰 447
      • 11.3.1 마법사 룩앤필 (RFRS 3.5.2) 447
      • 11.3.2 편집기에서 새 파일 열기 (RFRS 3.5.6) 448
      • 11.3.3 새 프로젝트를 생성할 때 퍼스펙티브 전환 (RFRS 3.5.7) 448
      • 11.3.4 새 객체 보기 (RFRS 3.5.8) 448
      • 11.3.5 단일 페이지 마법사 버튼 (RFRS 5.3.5.13) 448
    • 11.4 요약 449
    • 11.5 참고자료 449
  • 12장 환경설정 페이지 451
    • 12.1 환경설정 페이지 생성 451
    • 12.2 환경설정 페이지 API 453
      • 12.2.1 FieldEditorPreferencePage 455
      • 12.2.2 필드 편집기 456
      • 12.2.3 PreferencePage 459
      • 12.2.4 Favorites 환경설정 페이지 461
      • 12.2.5 검증 462
      • 12.2.6 중첩된 환경설정 페이지 464
      • 12.2.7 탭 환경설정 페이지 466
    • 12.3 환경설정 API 467
      • 12.3.1 기본 환경설정 467
      • 12.3.2 환경설정 접근 468
      • 12.3.3 프로그램에서 기본 값 지정 471
      • 12.3.4 파일에서 기본값 지정 472
      • 12.3.5 Favorites 뷰 연동 472
      • 12.3.6 환경설정 변경 전달 473
    • 12.4 RFRS 고찰 474
      • 12.4.1 환경설정 대화창 사용 (RFRS 3.5.25) 474
    • 12.5 요약 475
    • 12.6 참고자료 475
  • 13장 프로퍼티 477
    • 13.1 프로퍼티 생성 477
      • 13.1.1 FavoriteItem 프로퍼티 477
      • 13.1.2 리소스 프로퍼티 479
    • 13.2 프로퍼티 대화창에서 프로퍼티 출력 481
      • 13.2.1 프로퍼티 페이지 선언 481
      • 13.2.2 리소스 프로퍼티 페이지 작성 484
      • 13.2.3 Favorites 항목 리소스 페이지 작성 486
      • 13.2.4 특성 대화창 열기 487
    • 13.3 특성 뷰에 프로퍼티 출력하기 488
      • 13.3.1 특성 뷰 API 489
      • 13.3.2 특성 뷰에서 Favorite 프로퍼티 출력 491
    • 13.4 특성 페이지를 환경설정 페이지로 재활용하기 493
    • 13.5 RFRS 고찰 495
      • 13.5.1 빠른 접근을 위한 특성 뷰 (RFRS 3.5.21) 495
    • 13.6 요약 495
    • 13.7 참고자료 495
  • 14장 빌더, 마커, 네이처 497
    • 14.1 빌더 499
      • 14.1.1 빌더 선언 499
      • 14.1.2 IncrementalProjectBuilder 502
      • 14.1.3 파생 리소스 509
      • 14.1.4 빌더를 프로젝트에 연관시키기 509
      • 14.1.5 빌더 호출 512
    • 14.2 마커 512
      • 14.2.1 마커 유형 513
      • 14.2.2 마커 생성과 제거 515
      • 14.2.3 마커 속성 517
      • 14.2.4 마커 해결-빠른 수정 520
      • 14.2.5 마커 찾기 525
    • 14.3 네이처 525
      • 14.3.1 네이처 선언 526
      • 14.3.2 빌더와 네이처 연관시키기 527
      • 14.3.3 IProjectNature 528
      • 14.3.4 필수 네이처 530
      • 14.3.5 네이처 충돌 530
      • 14.3.6 네이처 이미지 531
      • 14.3.7 프로젝트에 네이처 연관시키기 531
    • 14.4 RFRS 고찰 534
      • 14.4.1 리소스 변환에는 빌더 사용 (RFRS 3.8.1) 535
      • 14.4.2 기존 빌더 대체 금지 (RFRS 3.8.3) 535
      • 14.4.3 ‘빌드’ 용어 사용 주의 (RFRS 5.3.8.1) 535
      • 14.4.4 생성된 리소스에 ‘파생됨’ 표시 (RFRS 5.3.8.2) 536
      • 14.4.5 정리 빌드 요청에 대한 처리 (RFRS 5.3.8.3) 536
      • 14.4.6 가능한 한 IResourceProxy 사용 (RFRS 5.3.8.4) 537
      • 14.4.7 빌더는 반드시 네이처로 추가 (RFRS 5.3.8.5) 537
    • 14.5 요약 537
    • 14.6 참고자료 538
  • 15장 도움말 구현 539
    • 15.1 도움말 사용 539
    • 15.2 도움말 구현 542
      • 15.2.1 새 도움말 프로젝트 생성 542
      • 15.2.2 플러그인 내역서 파일 547
      • 15.2.3 목차 파일 548
      • 15.2.4 HTML 컨텐츠 작성 550
    • 15.3 컨텍스트 감지 도움말 (F1) 552
      • 15.3.1 컨텍스트 ID를 항목에 연관시키기 553
      • 15.3.2 IWorkbenchHelpSystem API 555
      • 15.3.3 컨텍스트 감지 도움말 컨텐츠 작성 556
      • 15.3.4 컨텍스트 확장점 557
      • 15.3.5 마커 도움말 560
    • 15.4 프로그램으로 도움말 접근 560
      • 15.4.1 특정 도움말 페이지 열기 561
      • 15.4.2 웹 페이지 열기 562
    • 15.5 치트 시트 563
      • 15.5.1 치트 시트 사용법 563
      • 15.5.2 간단한 치트 시트 작성 564
      • 15.5.3 치트 시트 액션 추가 568
    • 15.6 RFRS 고찰 570
      • 15.6.1 도움말 시스템으로 도움말 제공 (RFRS 3.7.2) 570
      • 15.6.2 도움말 시스템을 통해 모든 도움말 제공 (RFRS 5.3.7.1) 571
      • 15.6.3 F1을 사용해 컨텍스트 도움말 활성화하기 (RFRS 5.3.7.2) 571
      • 15.6.4 동적 도움말 구현 (RFRS 5.3.7.3) 571
      • 15.6.5 독립형 도움말 사용 (RFRS 5.3.7.4) 572
      • 15.6.6 추가 문서 사용 (RFRS 5.3.7.5) 572
      • 15.6.7 태스크 흐름 개요 제공하기 (RFRS 5.3.5.34) 572
      • 15.6.8 단 하나의 태스크만 설명하기 (RFRS 5.3.5.35) 573
      • 15.6.9 각 단계마다 도움말 링크 제공 (RFRS 5.3.5.36) 573
    • 15.7 요약 574
    • 15.8 참고자료 574
  • 16장 다국어 지원 575
    • 16.1 플러그인 내역서 구체화 576
    • 16.2 플러그인 문자열 구체화 578
    • 16.3 프래그먼트 사용 586
      • 16.3.1 프래그먼트 프로젝트 작성 587
      • 16.3.2 프래그먼트 내역서 589
      • 16.3.3 프래그먼트 프로젝트 컨텐츠 592
    • 16.4 요약 592
    • 16.5 참고자료 593
  • 17장 확장점 작성 595
    • 17.1 확장점 메커니즘 595
    • 17.2 확장점 정의 597
      • 17.2.1 확장점 생성 597
      • 17.2.2 확장점 스키마 작성 598
      • 17.2.3 확장점 요소와 속성 600
      • 17.2.4 확장점 요소 문법 604
    • 17.3 확장점 구현 코드 606
      • 17.3.1 확장 정보 해석 606
      • 17.3.2 프록시 생성 608
      • 17.3.3 실행 가능 확장 작성 610
      • 17.3.4 클린업 613
    • 17.4 확장점 문서화 613
    • 17.5 확장점 사용 615
    • 17.6 RFRS 고찰 616
      • 17.6.1 확장점 문서화 (RFRS 3.10.5) 616
      • 17.6.2 에러 기록 (RFRS 5.3.10.1) 617
    • 17.7 요약 617
    • 17.8 참고자료 618
  • 18장 피처, 브랜딩, 업데이트 619
    • 18.1 피처 프로젝트 620
      • 18.1.1 새 피처 프로젝트 생성 621
      • 18.1.2 피처 내역서 파일 623
      • 18.1.3 피처 내역서 편집기 624
    • 18.2 브랜딩 630
      • 18.2.1 about.html 파일 631
      • 18.2.2 about.ini 파일 632
      • 18.2.3 제품 브랜딩 634
    • 18.3 업데이트 사이트 636
      • 18.3.1 업데이트 사이트 프로젝트 작성 636
      • 18.3.2 site.xml 파일 638
      • 18.3.3 업데이트 웹사이트 641
      • 18.3.4 피처 내역서 다듬기 642
      • 18.3.5 업데이트 사이트 접근 643
    • 18.4 RFRS 고찰 646
      • 18.4.1 제품 브랜딩 오버라이드 금지 (RFRS 3.1.8) 646
      • 18.4.2 브랜드 적용 피처 출력 여부 (RFRS 5.3.1.9) 647
      • 18.4.3 귀속 정보 포함하기 (RFRS 5.3.1.10) 647
      • 18.4.4 about.html 파일 내용 (RFRS 5.3.1.11) 647
      • 18.4.5 스플래시 화면 제한 (RFRS 5.3.1.12) 648
    • 18.5 요약 648
    • 18.6 참고자료 649
  • 19장 제품 빌드 651
    • 19.1 Ant 간단히 살펴보기 651
      • 19.1.1 프로젝트 빌드 651
      • 19.1.2 빌드 타깃 652
      • 19.1.3 빌드 태스크 653
      • 19.1.4 빌드 프로퍼티 657
        • 19.1.4.1 사전정의된 프로퍼티 658
        • 19.1.4.2 프로퍼티 유효범위 659
        • 19.1.4.3 프로퍼티 가변성 661
        • 19.1.4.4 타깃 외부의 프로퍼티 661
        • 19.1.4.5 명령행 프로퍼티 662
      • 19.1.5 <antcall> 태스크 664
      • 19.1.6 macrodef 666
      • 19.1.7 콘솔에서 Ant 실행 668
      • 19.1.8 Ant 확장 669
    • 19.2 Favorites 제품 빌드 671
      • 19.2.1 자동 생성 빌드 스크립트 671
      • 19.2.2 Favorites 빌드 스크립트 리팩토링 676
        • 19.2.2.1 빌드 매크로와 빠른 중단 678
        • 19.2.2.2 빌드 초기화 679
        • 19.2.2.3 다중 프로젝트 빌드 681
        • 19.2.2.4 개별 프로젝트 빌드 683
      • 19.2.3 빌드 과정에서 직접 컴파일하기 689
      • 19.2.4 단일 바이너리와 다중 바이너리 비교 691
      • 19.2.5 다른 버전의 이클립스로 편집하기 692
      • 19.2.6 다른 버전의 이클립스에 대해 빌드하기 693
        • 19.2.6.1 코드 브랜치 694
        • 19.2.6.2 퍼사드 패턴 694
        • 19.2.6.3 전처리기 695
        • 19.2.6.4 프래그먼트 697
        • 19.2.6.5 이클립스 3.0을 위한 Favorites 예제 698
      • 19.2.7 클래스 경로 도구 700
      • 19.2.8 이클립스 3.0에 대해 빌드하기 702
      • 19.2.9 소스 코드 타깃 변경 704
      • 19.2.10 버전 확인 705
      • 19.2.11 다국어 지원 빌드 706
    • 19.3 요약 707
    • 19.4 참고자료 707
  • 20장 심화학습 709
    • 20.1 고급 프로젝트 검색-참조 709
    • 20.2 내부 코드 접근 710
      • 20.2.1 이클립스 뉴스그룹 711
      • 20.2.2 버그질라-이클립스 버그 추적 시스템 711
      • 20.2.3 내부 코드 접근과 관련된 옵션 712
      • 20.2.4 이클립스와 일반 자바 애플리케이션의 차이 713
      • 20.2.5 관련된 플러그인 713
      • 20.2.6 프래그먼트 사용 714
    • 20.3 어댑터 714
      • 20.3.1 IAdaptable 714
      • 20.3.2 어댑터 사용 715
      • 20.3.3 어댑터 팩토리 715
      • 20.3.4 IWorkbenchAdapter 718
    • 20.4 웹 브라우징 또는 메일 작성 718
      • 20.4.1 IWorkbenchBrowserSupport 718
      • 20.4.2 LaunchURL 720
      • 20.4.3 OpenEmailAction 720
    • 20.5 확장점에 지정된 타입 724
      • 20.5.1 파라미터 적용 타입 724
        • 20.5.1.1 구조화되지 않은 파라미터 725
        • 20.5.1.2 구조화된 파라미터 725
      • 20.5.2 다른 플러그인에서 클래스 참조하기 726
    • 20.6 이클립스를 수정하여 파트 식별자 찾기 727
      • 20.6.1 이클립스 베이스 코드 수정하기 727
      • 20.6.2 전역 액션 작성 729
      • 20.6.3 새 유틸리티 테스트 731
      • 20.6.4 이클립스에 변경사항 제출 731
    • 20.7 레이블 데코레이터 732
      • 20.7.1 레이블 데코레이터 선언 733
      • 20.7.2 ILightweightLabelDecorator 734
      • 20.7.3 장식전용 레이블 데코레이터 736
      • 20.7.4 IDecoratorManager 737
    • 20.8 백그라운드 작업-Jobs API 739
    • 20.9 플러그인 클래스 로더 742
    • 20.10 이른 시동 747
      • 20.10.1 이른 시동 관리하기 747
      • 20.10.2 이른 시동 끄기 748
    • 20.11 리치 클라이언트 플랫폼 748
    • 20.12 결론 749
    • 20.13 참고자료 750
  • 부록 A 이클립스 플러그인과 리소스 751
    • A.1 플러그인 751
      • A.1.1 CodePro AnalytiX와 CodePro PlusPak 751
      • A.1.2 EclipseProfiler 753
      • A.1.3 EclipseUML 754
      • A.1.4 MyEclipse Enterprise Workbench 755
      • A.1.5 WindowBuilder Pro 757
      • A.1.6 XMLBuddy 758
    • A.2 리소스 760
      • A.2.1 Eclipse.org 760
      • A.2.2 Eclipse Plug-in Central 761
      • A.2.3 Eclipse plug-in site 762
      • A.2.4 Eclipse wiki wiki 762
      • A.2.5 EclipseCon 762
      • A.2.6 Eclipse용 ANTLR 플러그인 762
      • A.2.7 Bugzilla 플러그인 762
      • A.2.8 Coloring editor 762
      • A.2.9 Eclipse Easter eggs 762
      • A.2.10 IBM Alphaworks on Eclipse 763
      • A.2.11 IBM Eclipse research 763
      • A.2.12 PHP plug-in for Eclipse 763
      • A.2.13 QNX’s Momentics 763
      • A.2.14 QuickShare: XP programming for Eclipse 763
      • A.2.15 Sangam: XP programming for Eclipse 763
  • 부록 B 래쇼날 소프트웨어 인증 765

  • 『이클립스 RCP』
  • 1부 소개
  • 1장 리치 클라이언트 플랫폼으로서 이클립스
    • 1.1 이클립스
    • 1.2 이클립스 리치 클라이언트 플랫폼
    • 1.3 이클립스 RCP의 역사
    • 1.4 RCP의 용도
      • 1.4.1 IBM 워크플레이스 클라이언트 테크놀로지TM
      • 1.4.2 NASA와 이클립스 RCP
    • 1.5 요약
  • 2장 이클립스 RCP 개념
    • 2.1 플러그인 커뮤니티
    • 2.2 플러그인 들여다보기
    • 2.3 통합 시스템 구성
    • 2.4 OSGi 프레임워크
    • 2.5 런타임
      • 2.5.1 애플리케이션
      • 2.5.2 제품
      • 2.5.3 확장 레지스트리
    • 2.6 SWT
    • 2.7 JFace
    • 2.8 UI 워크벤치
      • 2.8.1 컨트리뷰션에 의한 확장
      • 2.8.2 퍼스펙티브, 뷰, 편집기
    • 2.9 요약
  • 2부 RCP로 만드는 메신저
  • 3장 준비 과정
    • 3.1 하이퍼볼라란?
    • 3.2 하이퍼볼라 개발 계획
    • 3.3 개발 환경 설치
    • 3.4 타겟 설정
    • 3.5 한번 실행해보자
    • 3.6 예제를 활용한 학습 요령
      • 3.6.1 예제 코드 관리자
      • 3.6.2 코드 비교 도구
    • 3.7 예제를 활용한 학습 요령
    • 3.8 요약
  • 4장 하이퍼볼라 애플리케이션
    • 4.1 하이퍼볼라와 첫 만남
    • 4.2 코드 둘러보기
      • 4.2.1 애플리케이션
      • 4.2.2 WorkbenchAdvisor
      • 4.2.3 퍼스펙티브
      • 4.2.4 WorkbenchWindowAdvisor
      • 4.2.5 ActionBarAdvisor
      • 4.2.6 요약
    • 4.3 실행과 디버깅
      • 4.3.1 디버깅
      • 4.3.2 실행 구성
    • 4.4 요약
  • 5장 하이퍼볼라 프로토타입 시작
    • 5.1 셸 기능 강화
      • 5.1.1 윈도우 위치와 크기 저장
    • 5.2 Contacts 뷰 추가
      • 5.2.1 Contacts 뷰를 퍼스펙티브에 추가
    • 5.3 채팅 모델
    • 5.4 Contacts 뷰 채우기
      • 5.4.1 ContactsView
      • 5.4.2 컨텐트 프로바이더 개요
      • 5.4.3 레이블 프로바이더
    • 5.5 이미지 추가하기
    • 5.6 요약
    • 5.7 참고자료
  • 6장 액션으로 메뉴와 툴바 꾸미기
    • 6.1 메뉴와 툴바 추가하기
      • 6.1.1 최상위 메뉴 만들기
      • 6.1.2 메뉴 관리자
      • 6.1.3 “Add Contact” 액션 정의
      • 6.1.4 “Add Contact” 액션 추가
      • 6.1.5 사용자 정의 툴바
    • 6.2 상태 표시줄 추가하기
      • 6.2.1 상태 표시줄 - 공유 리소스
    • 6.3 시스템 트레이 연동
      • 6.3.1 Display 얻기
      • 6.3.2 트레이 항목 생성하기
    • 6.4 요약
    • 6.5 참고자료
  • 7장 편집기로 구현하는 채팅 화면
    • 7.1 뷰와 편집기
    • 7.2 채팅 편집기 정의
      • 7.2.1 편집기 입력
      • 7.2.2 Chat 액션
    • 7.3 한번 실행해보자
    • 7.4 요약
    • 7.5 참고자료
  • 8장 하이퍼볼라 브랜드 적용
    • 8.1 하이퍼볼라 제품 정의하기
    • 8.2 윈도우 이미지
    • 8.3 런처 구성하기
    • 8.4 스플래시 화면
    • 8.5 제품 정보
      • 8.5.1 제품에 대한 정보
      • 8.5.2 플러그인 About 정보
    • 8.6 요약
  • 9장 하이퍼볼라 패키지 만들기
    • 9.1 하이퍼볼라 내보내기
    • 9.2 다양한 플랫폼으로 내보내기
    • 9.3 요약
    • 9.4 참고자료
  • 10장 메시지 주고받기
    • 10.1 서드파티 라이브러리 통합하기
      • 10.1.1 스맥 번들화
      • 10.1.2 번들 테스트
    • 10.2 모델 리팩터링
      • 10.2.1 스맥 소개
      • 10.2.2 설계 목표
      • 10.2.3 프로토타입 클래스 지우기
      • 10.2.4 채팅 UI 연결
    • 10.3 UI 개선
      • 10.3.1 컨텐트 프로바이더
      • 10.3.2 레이블 프로바이더
    • 10.4 엘리자와 채팅
    • 10.5 요약
  • 11장 로그인 기능 만들기
    • 11.1 로그인 대화창 추가하기
      • 11.1.1 대화창에 브랜드 적용하기
    • 11.2 로그인 설정 저장
      • 11.2.1 UI 구현
      • 11.2.2 환경설정 API
    • 11.3 자동 로그인 환경설정 추가하기
      • 11.3.1 환경설정 페이지 만들기
      • 11.3.2 액션 추가하기
      • 11.3.3 환경설정 접근하기
      • 11.3.4 기본 환경설정 값
      • 11.3.5 로그인 대화창의 환경설정
    • 11.4 요약
  • 12장 단축키 구현
    • 12.1 커맨드 정의
    • 12.2 한번 실행해보자
    • 12.3 워크벤치 액션에 키 바인딩 지정
    • 12.4 키 구성
    • 12.5 키 환경설정 페이지
    • 12.6 요약
  • 13장 도움말 기능
    • 13.1 타겟 플랫폼에 추가하기
      • 13.1.1 플러그인 가져오기
      • 13.1.2 플러그인 추가하기
    • 13.2 도움말 플러그인 얻기
    • 13.3 도움말 플러그인 구성
    • 13.4 도움말 액션 추가
    • 13.5 도움말 내용 추가
    • 13.6 도움말 내용 구조
    • 13.7 F1 도움말
    • 13.8 도움말과 함께 플러그인 내보내기
    • 13.9 요약
    • 13.10 참고자료
  • 14장 자동 업데이트
    • 14.1 업데이트 플러그인 가져오기
    • 14.2 업데이트 플러그인 구성하기
    • 14.3 피처 정의
    • 14.4 피처에 브랜드 적용하기
    • 14.5 업데이트 액션 추가
      • 14.5.1 하이퍼볼라 업데이트
      • 14.5.2 하이퍼볼라 확장하기
      • 14.5.3 확장 관리
    • 14.6 자동 업데이트
    • 14.7 요약
  • 3부 워크벤치
  • 15장 워크벤치 어드바이저
    • 15.1 워크벤치 어드바이저
      • 15.1.1 워크벤치 생명주기
    • 15.2 WorkbenchAdvisor
      • 15.2.1 생명주기 API
      • 15.2.2 예외 및 유휴 API
      • 15.2.3 구성 API
    • 15.3 WorkbenchWindowAdvisor
      • 15.3.1 IWorkbenchWindowConfigurer
      • 15.4 ActionBarAdvisor
      • 15.4.1 IActionBarConfigurer
    • 15.5 워크벤치 개요
      • 15.5.1 워크벤치 확장점 참조
      • 15.5.2 액션
      • 15.5.3 규모 확장성
      • 15.5.4 컨트리뷰션
      • 15.5.5 퍼스펙티브
      • 15.5.6 시동
    • 15.6 요약
  • 16장 퍼스펙티브, 뷰, 편집기
    • 16.1 퍼스펙티브
      • 16.1.1 퍼스펙티브 추가하기
      • 16.1.2 Debug 퍼스펙티브와 콘솔 뷰 추가하기
      • 16.1.3 IPageLayout 참조
      • 16.1.4 퍼스펙티브 바
      • 16.1.5 퍼스펙티브 메뉴
      • 16.1.6 프로그램으로 퍼스펙티브 제어하기
    • 16.2 뷰와 편집기
      • 16.2.1 같은 뷰의 다중 인스턴스
      • 16.2.2 스티키 뷰
      • 16.2.3 기여한 뷰 보기
      • 16.2.4 뷰 레지스트리
      • 16.2.5 파트들을 함께 연결하기
    • 16.3 다중 워크벤치 윈도우
      • 16.3.1 윈도우 탐색 메뉴
    • 16.4 편집기를 드래그앤드롭으로 열기
    • 16.5 요약
  • 17장 액션
    • 17.1 개요
    • 17.2 하이퍼볼라의 선언적 액션
      • 17.2.1 선언적 액션
      • 17.2.2 컨트리뷰션 허용하기
      • 17.2.3 액션 선언하기
      • 17.2.4 컨텍스트 메뉴
    • 17.3 표준 워크벤치 액션
    • 17.4 리타게터블 액션
    • 17.5 선언적 액션 통합하기
    • 17.6 툴바 액션 활용 팁
      • 17.6.1 이미지와 텍스트 함께 보여주기
      • 17.6.2 툴바에 컨트롤 추가
    • 17.7 상태 표시줄에 컨트리뷰션 추가
    • 17.8 진행 상황 알리기
      • 17.8.1 비선점 진행
      • 17.8.2 진행 뷰
      • 17.8.3 진행 관련 설정
      • 17.8.4 ProgressProvider 작성
    • 17.9 요약
  • 18장 색다른 워크벤치 윈도우 만들기
    • 18.1 무엇을 고칠 수 있을까?
    • 18.2 워크벤치 윈도우 조정
      • 18.2.1 UI 요소를 숨기거나 보여주기
      • 18.2.2 FormLayout
      • 18.2.3 툴바 숨기기
      • 18.2.4 토글 액션 추가하기
      • 18.2.5 퀵 서치 패널
      • 18.2.6 한번 실행해보자
    • 18.3 윈도우 모양까지 바꿔보기
      • 18.3.1 모양새 만들기
      • 18.3.2 윈도우 만들기
      • 18.3.3 윈도우 컨텐트 정의
    • 18.4 요약
  • 19장 뷰와 편집기의 외양 바꾸기
    • 19.1 프리젠테이션
    • 19.2 프리젠테이션 예시
      • 19.2.1 R21 프리젠테이션
      • 19.2.2 예제 프리젠테이션
    • 19.3 프리젠테이션 작성하기
      • 19.3.1 위젯 계층구조
      • 19.3.2 StackPresentation
    • 19.4 예제 프리젠테이션
      • 19.4.1 프리젠테이션 팩토리
      • 19.4.2 스택 프리젠테이션
      • 19.4.3 크기와 위치
      • 19.4.4 파트 추가, 선택, 삭제
      • 19.4.5 메뉴
    • 19.5 요약
  • 4부 개발 프로세스
  • 20장 코드 라이브러리 통합
    • 20.1 JAR 파일 형태의 플러그인
    • 20.2 주입 방식 번들화
    • 20.3 포장 방식 번들화
    • 20.4 참조 방식 번들화
    • 20.5 클래스로딩 문제 해결하기
      • 20.5.1 Class.forName() 이슈
      • 20.5.2 컨텍스트 클래스로더 이슈
      • 20.5.3 JRE 클래스 관리
      • 20.5.4 직렬화
    • 20.6 요약
  • 21장 플러그인 설치와 업데이트
    • 21.1 업데이트의 역할
    • 21.2 피처
      • 21.2.1 피처의 역할
      • 21.2.2 피처의 구성
    • 21.3 업데이트 사이트 작성과 관리
    • 21.4 예제: 동적 컨텐트 다루기
    • 21.5 요약
    • 21.6 참고자료
  • 22장 동적 플러그인
    • 22.1 동적 하이퍼볼라 만들기
    • 22.2 동적 시스템 구현을 위한 과제
    • 22.3 동적 인식
      • 22.3.1 동적 확장 시나리오
      • 22.3.2 객체 다루기
      • 22.3.3 번들 리스너
    • 22.4 동적 구동
      • 22.4.1 종료 후 뒤처리
    • 22.5 요약
  • 23장 다양한 환경에서 동작하는 RCP
    • 23.1 예제 코드
    • 23.2 시나리오
      • 23.2.1 시나리오에 대한 이야기
    • 23.3 제품 구성
      • 23.3.1 하이퍼볼라 구조 변경
      • 23.3.2 하이퍼볼라 프로젝트
      • 23.3.3 프로젝트 작명법
      • 23.3.4 왜 프로젝트가 많은가?
    • 23.4 하이퍼볼라 제품 구성
      • 23.4.1 JFace 구성
      • 23.4.2 PDA 구성
      • 23.4.3 확장형 구성(IDE)
      • 23.4.4 워크벤치 구성
      • 23.4.5 하이퍼볼라 키오스크
    • 23.5 코드 구조
      • 23.5.1 하이퍼볼라 계층화
      • 23.5.2 워크벤치 컨트리뷰션
      • 23.5.3 액션
      • 23.5.4 키 바인딩
      • 23.5.5 뷰와 편집기
      • 23.5.6 마법사, 환경 설정, 프로퍼티 페이지
      • 23.5.7 선택적 종속성
      • 23.5.8 아이콘과 이미지
    • 23.6 플랫폼 설계하기
      • 23.6.1 확장점
      • 23.6.2 확장 팩토리
      • 23.6.3 명명된 확장과 익명 확장
    • 23.7 RCP 친화적인 플러그인
    • 23.8 요약
  • 24장 하이퍼볼라 빌드
    • 24.1 PDE 빌드란?
    • 24.2 플러그인 build.properties
      • 24.2.1 빌드 제어 프로퍼티
      • 24.2.2 사용자 정의 빌드 빌드 스크립트 사용하기
    • 24.3 피처 build.properties
      • 24.3.1 루트 파일 식별과 위치 지정
      • 24.3.2 런처
      • 24.3.3 config.ini
    • 24.4 하이퍼볼라 빌더 설정
      • 24.4.1 build.properties
      • 24.4.2 customTargets.xml
    • 24.5 빌더 실행
    • 24.6 제품 빌드
    • 24.7 크로스 플랫폼 빌드
    • 24.8 빌드 고급 활용
      • 24.8.1 기반 플랫폼 관리
      • 24.8.2 CVS에서 가져오기
      • 24.8.3 맵 가져오기
      • 24.8.4 버전 번호 자동 치환
      • 24.8.5 버전 번호 수식
      • 24.8.6 결과물 이름 제어
    • 24.9 요약
  • 25장 마지막 한걸음: 배포
    • 25.1 아카이브
    • 25.2 네이티브 인스톨러
    • 25.3 자바 웹 스타트 (JNLP)
      • 25.3.1 자바 웹 스타트 동작 방식
      • 25.3.2 하이퍼볼라와 자바 웹 스타트
      • 25.3.3 JAR 서명
      • 25.3.4 자바 웹 스타트로 내보내기
      • 25.3.5 JNLP 내역서 빌드
      • 25.3.6 자바 웹 스타트와 업데이트
    • 25.4 업데이트 사이트
    • 25.5 설치한 하이퍼볼라 초기화
    • 25.6 사전 초기화 구성
    • 25.7 다중 사용자 설치 시나리오
      • 25.7.1 공유 설치
      • 25.7.2 공유 구성
      • 25.7.3 다중 구성
    • 25.8 요약
    • 25.9 참고자료
  • 5부 참고자료
  • 26장 OSGi 핵심
    • 26.1 OSGi와 이클립스 런타임
    • 26.2 플러그인의 모양새
    • 26.3 프래그먼트
    • 26.4 버전 번호 규칙
    • 26.5 서비스
    • 26.6 싱글턴
    • 26.7 번들 생명주기
      • 26.7.1 BundleActivator (Plugin 클래스)
      • 26.7.2 액티베이터 주의사항
      • 26.7.3 액티베이터의 사용
    • 26.8 활성화 앞당기기
      • 26.8.1 확장을 미리 활성화시키기
      • 26.8.2 osgi.bundles
      • 26.8.3 시동 과정
    • 26.9 자동 활성화
    • 26.10 클래스로딩
      • 26.10.1 클래스 검색 알고리즘
      • 26.10.2 가져오기와 내보내기 선언
      • 26.10.3 가져오기와 요구하기 비교
      • 26.10.4 선택적 가져오기
      • 26.10.5 다시 내보내기
      • 26.10.6 x-internal과 x-friends
    • 26.11 데이터 영역
    • 26.12 하이퍼볼라 동작과정 정리
    • 26.13 요약
  • 27장 Eclipse.org 플러그인
    • 27.1 플러그인 다운로드 사이트
    • 27.2 이클립스 플랫폼 플러그인
    • 27.3 제품 소개
    • 27.4 리소스
      • 27.4.1 리소스 키 피처 개요
      • 27.4.2 리소스 시작
      • 27.4.3 워크벤치 내의 리소스
    • 27.5 텍스트 편집
      • 27.5.1 텍스트 플러그인
      • 27.5.2 편집과 편집기 비교
      • 27.5.3 Text와 StyledText
      • 27.5.4 IDocument
      • 27.5.5 TextViewer와 TextEditor
      • 27.5.6 기타
    • 27.6 콘솔
    • 27.7 변수
    • 27.8 아웃라인과 프로퍼티 뷰
    • 27.9 폼
    • 27.10 브라우저

도서 오류 신고

도서 오류 신고

에이콘출판사에 관심을 가져 주셔서 고맙습니다. 도서의 오탈자 정보를 알려주시면 다음 개정판 인쇄 시 반영하겠습니다.

오탈자 정보는 다음과 같이 입력해 주시면 됩니다.

(예시) p.100 아래에서 3행 : '몇일'동안 -> 며칠동안