Top

이클립스 요술램프 [Java의 마법에 빠져볼까?]

  • 원서명Eclipse in Action: A Guide for the Java Developer (ISBN 9781930110960)
  • 지은이David Gallardo
  • 옮긴이김기영
  • ISBN : 8989975409
  • 25,000원
  • 2004년 04월 16일 펴냄
  • 페이퍼백 | 517쪽 | 190*245mm
  • 시리즈 : 이클립스 프로페셔널

책 소개

이 책은 Eclipse를 기반으로 한 Java 프로그래밍에 초점을 맞추고 있다. Eclipse는 IBM에서 만든 플랫폼 독립적 IDE로 오픈소스로 릴리즈됐으며, 작은 코어를 확장할 수 있도록 만들어졌다. Eclipse는 업체와 오픈소스 커뮤니티 모두에게 전폭적인 지원을 받고 있다.

이 책은 Eclipse를 완전히 터득하는데 반드시 알아야 할 큰 밑그림을 제시하고, 거기에 맞춰 사실을 설명한다. JUnit, Ant, CVS와 같이 Eclipse에 통합된 오픈소스 툴 뿐 아니라 웹 개발 플러그인의 사용방법도 다루고 있다. 이 책의 집필진은 모두 Eclipse가 릴리즈됐을 때부터 집중적으로 사용, 검증해온 얼리어댑터이다.

이 책은 독자들이 실습을 통해 Eclipse를 공부할 수 있도록 만들어졌다. 다른 IDE를 경험하지 못한 초중급 Java 개발자도 볼 수 있도록 구성됐으며, 고급 개발자를 위해 플러그인 구축을 통한 Eclipse 기능 확장을 다루고 있다.


<이 책의 내용>

* Eclipse 설계, 특징, 목표
* JDT(Java Development Toolkit)을 이용한 빌드, 테스트, 디버그
* Eclipse와 JUnit, Ant, CVS
* SWT와 Jface
* Eclipse 확장
* 새로운 리팩토링을 비롯한 Eclipse 2.1의 기능



<이책의 활용 방법>

Eclipse를 처음 접하는 독자라면 1~6장을 먼저 읽어야 한다. 첫번째 섹션에서는 Eclipse를 차근차근히 배워나가면서, 가장 일반적이고 효과적인 예제를 통해 툴과 프로그래밍 기법을 습득할 수 있다. Swing 대신 Eclipse GUI 툴킷을 사용해 독립형 프로그램을 작성하고자 한다면 부록 D와 E를 활용할 수 있다. Eclipse Java 기술에 자신감을 가지고 있다면 Eclipse를 이용해 웹을 개발하는 방법을 다룬 7장으로 곧장 넘어가도 된다.
Eclipse를 이전해 사용해왔지만 그 기능을 확장하고 싶어하는 독자라면 8장과 9장을 읽는 것이 좋다. 여기서 여러분은 플러그인의 개발, 통합, 실행 과정을 단계별로 배울 수 있다. 여러분이 개발하고 있는 플러그인에서 Eclipse 사용자 인터페이스와의 상호작용이 필요할 경우, 부록 D와 E를 살펴봄으로써 Eclipse UI를 구성하는 기술에 관해 조금 이해해두는 것이 좋다. 그리고 부록 C에서 Eclipse를 확장할 수 있는 위치를 표 하나에 모두 정리한 간단한 레퍼런스를 참고할 수 있다.


<이 책의 구성>

이 책은 여러분이 Eclipse의 무한한 잠재력을 십분 활용할 수 있도록 만들어졌다. 이 책은 Eclipse를 Java IDE로 활용하는데 주로 초점을 맞추고 있으나, 고급 개발자를 배려하고자 Eclipse를 다른 언어와 애플리케이션으로 확장하는데 필요한 정보 역시 빠짐없이 설명한다.

이 책은 2개의 섹션과 9개의 장, 5개의 부록으로 구성된다. 첫번째 섹션은 Eclipse를 IDE로 활용해 Java 코드를 개발하고자 하는 독자를 대상으로 하고 있다.

1장에서는 Eclipse 프로젝트가 어떻게 생겨났으며 어떻게 설계됐고 장차 어떤 방향으로 나아갈 것인지를 설명한다.
2장에서는 Eclipse의 설치 방법, Java 프로그램을 만들고 디버그하는 방법, 가장 중요한 옵션과 사용자 설정 몇 가지를 소개한다.
3장에서는 Eclipse에서 제공하는 자바 개발의 최고봉인 유닛 테스팅, 디버깅, 로깅을 심도있게 다룬다.
4장에서는 예제 애플리케이션을 통해 프로젝트를 정리하는 방법과 Java 툴킷의 리팩토링 지원을 사용하는 방법을 배운다.
5장에서는 오픈소스 제작 툴인 Ant를 설명한다. Ant가 무엇이고 Eclipse에 어떻게 통합하는지에 관한 기본지식을 배울 수 있을 것이다.
6장에서는 Eclipse에서 지원하는 소스코드 저장소인 CVS를 설명한다. 여기서 여러분은 프로젝트 공유 방법, 프로젝트 검사 방법을 배우고 한 사람 이상이 소스를 수정했을 때 생기는 충돌을 처리하는 방법을 알 수 있다.
7장에서는 Sysdeo, XMLBuddy와 같은 플러그인을 통해 Eclipse가 JSP와 servlet 웹 개발을 지원하는 방식을 살펴본다. 여기서는 예제 웹사이트를 분석해 나가면서 설계, 개발, 디버깅, 테스팅의 각 단계를 모두 짚어본다.

두번째 섹션은 Eclipse에 새 기능을 확장하려는 독자를 대상으로 하고 있다.

8장에서는 Eclipse 플러그인과 플러그인 개발 환경을 소개한다. 여기서 여러분은 간단한 플러그인을 제작하고 배치해서 다른 사람들이 사용할 수 있게 하는 법을 배운다.
9장에서는 고급 플러그인의 코드를 살펴본다. 여기서는 편집기, 뷰어, 설정 페이지를 만드는 법을 알아 본다.

부록에서는 이 책에서 설명한 내용을 보충하는 보다 자세한 정보를 소개한다.

부록 A는 Eclipse의 자바 관련 메뉴에 관한 간략한 레퍼런스이다.
부록 B에서는 다양한 운영체계에서의 CVS 서버 설치를 설명한다.
부록 C에는 Eclipse가 제공하는 확장 포인트를 빠짐없이 수록한 표가 수록돼있다.
부록 D에서는 Eclipse 사용자 인터페이스의 기반으로 쓰이는 Standard Widget Toolkit을 다룬다.
부록 E에서는 SWT에 기반을 둔 상위 수준 사용자 인터페이스 툴킷인 JFace를 소개한다.

저자/역자 소개

<저자 소개>

David Gallardo는 C/Java 소프트웨어 개발 경력 15년의 컨설턴트이자 프로그래머이다. 그는 텍사스 엘파소에 산다.
20년 경력의 SAS 베테랑인 Ed Burnette은 Eclipse를 이용해 C와 Java로 상용 소프트웨어를 개발한다. 그는 북캐롤라이나의 Research Triangle 공원 근처에 산다.
영국 웨스트서섹스에 살고 있는 Robert McGovern은 Eclipse를 Java/Ruby 오픈소스 프로젝트로 광범위하게 사용하고 있는 개발자이다.


<역자 소개>

김기영 kykim-e@skec.co.kr

KAIST 토목공학과 석사과정을 졸업했으며 현재 SK건설 부설 연구소에서 공학용 소프트웨어 개발/관리 업무를 수행하고 있다. 대학원 시절 중소기업의 웹사이트 제작에 참여한 것을 계기로 현재 여러 프로젝트에서 웹 프로그래머로 활동중이다.
번역서로는 Beginning JavaScript, J2SE 1.4, .NET Compact Framework, JXTA, 플래시 MX로 만드는 비디오, 플래시 MX 액션스크립트 요술램프 등이 있다.


<역자 서문>

Eclipse는 만인이 함께 쓰는 무료 음악감상실이다. 지금까지는 장사꾼이 번듯한 음악감상실을 차려놓고 입장료를 받아왔는데, 정말 내가 주인이라고 느껴지는 음악 감상실이 생긴 것이다. 그래서 너도나도 이곳에 자신이 만든 최신 장비를 들여놓고 공유하려 하고 있다. 덕분에 이제 여기에는 지금까지의 음악감상실보다 훨씬 많은 장비가 넘쳐나게 됐고, 이제 임원을 선출해서 어떤 장비를 받아들이고 어떤 장비를 내보낼 것인지 회의까지 한다.
이것이 바로 Eclipse의 정체다. 그리고 그 이름이 말해주는 것처럼 Eclipse는 Java 세계를 모두 뒤덮어버릴 수 있을 만큼 자신의 영역을 넓혀나가고 있다. 그리고 Java를 공부하는 여러분은 이미 Eclipse의 그늘 안에 들어와버렸다. 이제 달 뒤에 숨은 태양을 찾으려 노력할 것인지, 아니면 그늘 속에서 안절부절 못한 채로 그냥 있을 것인지 결정하는 것은 모두 여러분 몫이다.
이 책은 Eclipse를 체계적으로 ‘분석’한다. 역자가 감히 ‘분석’이라는 말까지 들어가면서 이 책을 소개한 이유는, 누구와도 비교할 수 없는 풍부한 지식과 경험을 갖춘 저자가 단편적 지식뿐 아니라 자신의 노하우와 생각까지도 상세히 기술했기 때문이다. 사실 이 책은 Eclipse를 구구절절히 설명한 두꺼운 자습서는 아니다. 저자도 밝혔듯이, 이 책은 ‘웹 브라우저만 띄우면 찾아볼 수 있는 얄팍한 사실’로 채운 성의없는 책이 아니라, 꼭 알아야 할 내용을 전혀 다른 시선으로 깊게 파헤친 책이다.
이런 의미에서 이 책을 편 여러분은 행운아다. 그리고 이 책을 번역한 역자 역시 예외는 아니다. 부디 이 책을 소유한다는 행운만이 아니라, 이 책으로부터 Eclipse를 응시하는 방법을 배운다는 행운도 누리길 빈다.

목차

목차
  • Section 1 Eclipse 사용
  • 1장 Eclipse란
    • 1.1 Eclipse는 어디에서 왔나
    • 1.2 Eclipse의 탄생
      • 1.2.1 Eclipse의 단체
      • 1.2.2 오픈소스 소프트웨어
    • 1.3 Eclipse란 무엇인가
      • 1.3.1 Eclipse 아키텍처
      • 1.3.2 언어 / 플랫폼 중립성
    • 1.4 Eclipse의 미래
    • 1.5 요약
  • 2장 Eclipse 워크벤치
    • 2.1 Eclipse 다운로드
    • 2.2 Eclipse 전체보기
      • 2.2.1 프로젝트와 폴더
      • 2.2.2 Eclipse 워크벤치
    • 2.3 가볍게 훑어보는 Java
      • 2.3.1 Java 프로젝트 만들기
      • 2.3.2 Java 클래스 만들기
      • 2.3.3 Java 프로그램 실행
      • 2.3.4 Java 프로그램 디버깅
      • 2.3.5 Java 스크랩북 페이지
    • 2.4 사용자 설정
      • 2.4.1 Javadoc 주석문
      • 2.4.2 서식 스타일
      • 2.4.3 코드 생성 템플릿
      • 2.4.4 클래스패스와 클래스패스 변수
      • 2.4.5 사용자 설정 저장하고 불러오기
    • 2.5 요약
  • 3장 자바 개발 사이클: 테스트와 코딩
    • 3.1 Java 개발 툴 방법론
      • 3.1.1 테스팅이 우선이다
      • 3.1.2 샘플 애플리케이션과 워킹 셋
    • 3.2 JUnit 유닛 테스팅 프레임워크
      • 3.2.1 메소드 스텁과 유닛 테스팅
      • 3.2.2 테스트 케이스 만들기
      • 3.2.3 어느 정도의 테스트가 가능할까?
      • 3.2.4 공용 메소드 구현
    • 3.3 좀 더 자세히 살펴보는 디버깅
      • 3.3.1 중단점 속성 설정
      • 3.3.2 버그 찾고 고치기
      • 3.4 log4j를 이용한 로깅
      • 3.4.1 로거, 어펜더, 패턴 레이아웃
      • 3.4.2 log4j 구성
    • 3.4.3 Eclipse에서 log4j 이용
    • 3.5 요약
  • 4장 Eclipse에서의 소스코드 작업
    • 4.1 외부 프로젝트 가져오기
    • 4.2 Persistence 컴포넌트 확장
      • 4.2.1 팩토리 메소드 작성
      • 4.2.2 유닛 테스트 클래스 만들기
      • 4.2.3 astronomy 클래스를 이용한 작업
      • 4.2.4 Star 테스트 케이스
      • 4.2.5 테스트 스위트 만들기
      • 4.2.6 ObjectManager 클래스 구현
    • 4.3 리팩토링
      • 4.3.1 클래스 이름 바꾸기
      • 4.3.2 인터페이스 추출
      • 4.3.3 앞으로의 리팩토링
    • 4.4 요약
  • 5장 Ant를 이용한 빌드
    • 5.1 공식 빌드 프로세스의 필요성
      • 5.1.1 빌드 디렉터리 구조 만들기
    • 5.2 Make - 잊혀져 가는 툴을 회고하며
    • 5.3 새로운 Java 표준 - Ant
      • 5.3.1 XML의 간단한 소개
      • 5.3.2 간단한 Ant 예제
      • 5.3.3 프로젝트
      • 5.3.4 타겟
      • 5.3.5 태스크
      • 5.3.6 프로퍼티
      • 5.3.7 파일 집합과 경로 구조
      • 5.3.8 이외의 Ant 기능
    • 5.4 샘플 Ant 빌드
      • 5.4.1 빌드 파일 build.xml 만들기
    • 5.4.2 빌드 수행하기
    • 5.4.3 빌드 디버깅
  • 5.5 요약
  • 6장 CVS와 소스 컨트롤
    • 6.1 소스 컨트롤의 필요성
      • 6.2 Eclipse에서 CVS 사용
      • 6.2.1 CVS를 통한 프로젝트 공유
      • 6.2.2 CVS 작업
      • 6.2.3 버전과 브랜치
    • 6.3 요약
  • 7장 웹 개발 툴
    • 7.1 웹에서의 개발
      • 7.1.1 웹, HTML, 서블릿, JSP
    • 7.1.2 JSP 개요
      • 7.1.3 서블릿 개요
    • 7.2 Tomcat과 Sysdeo Tomcat 플러그인
      • 7.2.1 Tomcat 설치와 테스트
      • 7.2.2 Sysdeo Tomcat 플러그인 설치와 설정
      • 7.2.3 Eclipse를 이용한 JSP 제작과 테스트
      • 7.2.4 Eclipse에서 서블릿 작성과 테스트
      • 7.2.5 CVS를 이용한 Tomcat 프로젝트 제어
    • 7.3 웹 애플리케이션 구축
      • 7.3.1 웹 애플리케이션 디렉토리 구조
      • 7.3.2 웹 애플리케이션 설계와 테스트
      • 7.3.3 서블릿과 JSP를 이용한 프로그래밍
    • 7.4 샘플 애플리케이션 시작
    • 7.5 요약
  • Section 2 Eclipse 확장
  • 8장 Eclipse 플러그인
    • 8.1 플러그인과 익스텐션 포인트
      • 8.1.1 플러그인의 내부
      • 8.1.2 플러그인의 라이프사이클
      • 8.1.3 간단한 플러그인 제작
    • 8.2 Plug-in Development Environment (PDE)
      • 8.2.1 워크벤치 준비
      • 8.2.2 SDK 플러그인 가져오기
      • 8.2.3 Plug-in Project 위저드
    • 8.3 “Hello, World” 플러그인 예제
      • 8.3.1 플러그인 매니페스트 에디터
      • 8.3.2 런타임 워크벤치
      • 8.3.3 플러그인 클래스(AbstractUIPlugin)
      • 8.3.4 액션, 메뉴, 툴바 / IworkbenchWindowActionDelegate
      • 8.3.5 플러그인과 클래스패스
    • 8.4 log4j 라이브러리 플러그인 예제
      • 8.4.1 소스 붙이기
    • 8.4.2 소스 zip 파일을 플러그인 패키지에 집어넣기
    • 8.5 플러그인 배치
    • 8.6 요약
  • 9장 Eclipse에서의 플러그인 작업
    • 9.1 log4j 통합 플러그인 예제
      • 9.1.1 프로젝트 개요
      • 9.1.2 프로젝트 준비
    • 9.2 에디터(TextEditor)
      • 9.2.1 에디터 클래스 준비
      • 9.2.2 에디터 익스텐션 정의
      • 9.2.3 아이콘 추가
      • 9.2.4 색상 추가
      • 9.2.5 토큰 매니저
      • 9.2.6 컨텐츠 도우미 (IContentAssistProcessor)
      • 9.2.7 모든 기능을 하나로
    • 9.3 뷰 (ViewPart)
      • 9.3.1 뷰 추가
      • 9.3.2 퍼스펙티브 기본값 수정
      • 9.3.3 뷰 클래스
      • 9.3.4 테이블 프레임워크
      • 9.3.5 레이블 제공자(LabelProvider)
      • 9.3.6 모델
      • 9.3.7 리시버 스레드
    • 9.4 사용자 설정 (FieldEditorPreferencePage)
      • 9.4.1 메인 사용자 설정 페이지
      • 9.4.2 에디터 사용자 설정 페이지
    • 9.5 플러그인 클래스
    • 9.6 요약
  • 부록 A Java 퍼스펙티브 메뉴 레퍼런스
    • A.1 File 메뉴 옵션
    • A.2 Edit 메뉴 옵션
    • A.3 Source 메뉴 옵션
    • A.4 Refactorings 메뉴 옵션
    • A.5 Navigate 메뉴 옵션
    • A.6 Search 메뉴 옵션
    • A.7 Project 메뉴 옵션
    • A.8 Run 메뉴 옵션
    • A.9 Window 메뉴 옵션
    • A.10 Help 메뉴 옵션
  • 부록 B CVS 설치 매뉴얼
    • B.1 UNIX/Linux에서 CVS 설치
    • B.1.1 CVS 리퍼지토리 생성
    • B.1.2 SSH 원격 액세스 설치
    • B.1.3 pserver 원격 액세스 설치
    • B.2 Mac OS X에서 CVS 설치
    • B.3 Windows에서 CVSNT 설치
    • B.4 Windows에서 Cygwin CVS와 SSH 설치
    • B.5 CVS 설치 문제 해결
    • B.6 CVS 리퍼지토리 백업
  • 부록 C 플러그인 익스텐션 포인트
  • 부록 D SWT
    • D.1 SWT란 무엇인가?
    • D.2 SWT 아키텍처
    • D.2.1 위젯 제작
    • D.2.2 리소스 폐기
    • D.3 SWT와 이벤트
    • D.4 SWT와 스레드
    • D.5 SWT 프로그램의 빌드/실행
    • D.6 SWT 사용
    • D.6.1 BasicFramework 클래스
    • D.6.2 MainApp 클래스
    • D.6.3 예제 실행
  • 부록 E Jface
    • E.1 아키텍처
    • E.2 JFace 애플리케이션 구축
    • E.2.1 JFaceExample 클래스
  • 도서 오류 신고

    도서 오류 신고

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

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

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