2021년 목표설정

이미지
기본적으로 작년에 달성하지 못한 것들을 하려고 생각중인데..코로나가 언제까지 이어질지, 한국이나 북해도는 갈 수 있을지..자격증은 응시 가능할지..여러가지가 불확실하다. 2021년은 무엇보다 정신적인 부분과 경제적인 부분에 중점을 두고 조금 더 치열하게 지내보고 싶다. 일본나이로도 30대 마지막 해, 이제 불혹에 접어드는 나이..복잡하지만 심플하게. 육체적목표 : 트라이에슬론 스탠다드 도전하기 정신적 : 자격증2개 도전 + 자체개발 서비스 론칭 가족적 : 가정의 평화를 유지하기 경제적 : 외식과 유흥비를 줄이고 부수입을 늘려서 결과적으로 저축하기 사회적 : 목표세미나를 포함해서 민단과 개인인맥의 활성화와 교류를 촉진하기

Eclipse 개요


 오르페우스로 살아가다 | ssspace2
 http://blog.naver.com/ssspace2/80026351287

Table of Contents

Introduction

Eclipse란?

  • IBM 주도의 자바 기반의 오픈 소스 프로젝트
  • IDE (Integrated Development Environment)
  • 2006년 2월 4일 현재 version 3.1.2

Eclipse 아키텍처

  • Eclipse 플랫폼은 Platform, JDT 및 PDE와 같은 3개의 주요 서브시스템으로 구성된다. 이 서브시스템들은 별도로 진행되지만 릴리즈나 다운로드는 통합되어 제공된다.
  • 서브시스템 설명
    • Platform: Eclipse 플랫폼 서브 시스템은 핵심 기반 구조와 UI 프레임웤들로 구성되어 있다.
    • JDT (Java Development Tools): JDT 서브시스템은 자바 애플리케이션을 개발, 테스트 및 디버깅을 하기 위한 통합 툴들로 구성되어 있다.
    • PDE (Plug-in Development Environment): PDE는 Eclipse 플러그인을 개발, 테스트, 디버깅 및 패키징을 하기 위한 통합 툴들로 구성되어 있다.

설치와 구성 요소

설치

  • 설치 파일 다운로드
  • Eclipse 설치
    • J2SE 1.4.1 이상의 Java Runtime 이나 JDK를 먼저 설치
    • 위에서 다운 받은 압축 파일을 풀면 설치 끝. (eclipse는 windows의 registry를 사용하지 않음)

구성 요소

  • Eclipse.exe를 실행
  • 아래와 같은 workspace 설정 화면이 나타난다.
    • 이 workspace에는 사용자의 환경 설정 정보, 리소스들 (프로젝트 실행 파일 및 소스 등)이 저장될 장소이므로 잘 관리해야 한다.
  • 초기 화면
    • 오른쪽 위의 큰 화살표를 선택하면 “Welcome”창이 최소화되며 디폴트 화면인 자바 퍼스팩티브로 바뀐다.
  • 화면 구성
    • 워크벤치 (workbench): eclipse의 사용자 인터페이스. 윈도우의 집합이며, 각 윈도우는 위 화면과 같은 구성 요소들로 구성된다. New window를 이용하여 새로운 윈도우를 생성시킬 수 있다.
    • 퍼스펙티브 바 (perspective bar): 위 그림에서 화면의 위 오른쪽에 위치하고 있는 툴바. 이 버튼을 이용하여 퍼스펙티브 간의 이동을 용이하게 할 수 있다. 컨텍스트 메뉴 (오른쪽 버튼 > 팝업 메뉴)를 이용하여 퍼스펙티브 메뉴의 위치를 바꿀 수 있다 (top left, top right, left)
    • 뷰 (view): 정보를 표시하는데 사용. 예를 들면 위 화면에서 왼쪽의 Package Explorer 뷰는 프로젝트별로 패키지, 파일 등의 여러 가지 정보들을 계층적으로 보여주며, 화면의 오른쪽에 있는 Outline 뷰는 활성화되어 있는 Java 에디터의 소스코드 개요를 보여준다. 하나의 워크벤치 내에서는 같은 뷰가 2개 이상 존재할 수 없다.
    • 퍼스펙티브 (perspective): 각종 에디터와 뷰의 모임. 작업의 종류에 따라 다른 모양이 된다. 예를 들어, 퍼스펙티브 바에서 ‘java’를 선택하면 자바 프로그램을 하기 위한 여러 가지 뷰로 바뀌며 (default), ‘debug’를 선택하면, 자바 코드를 디버깅하기 위한 뷰들로 바뀐다. 플러그 인의 설치에 따라 플러그 인과 관련된 추가의 퍼스펙티브를 선택할 수 있다.
    • Fast 뷰 (fast view): 작업 영역을 넓게 사용하기 위해 잘 사용하지 않는 화면들을 최소화 시켜놓고 필요한 시점에만 잠깐 활성화 시킬 때 사용된다. 최소화 할 뷰의 타이틀에서 컨텍스트 메뉴의 [fast view] 를 선택하면 최소화가 되며, ‘fast view’에 있는 관련 아이콘을 누르면 뷰가 활성화가 된다.

기본 기능

  • 간단한 자바 애플리케이션의 작성을 통해 eclipse의 기본 기능들을 살펴보자
  • 프로젝트 생성
    • [File > New > Project > New Project] 팝업 창
    • [New Project] > Java project 선택 > Next
    • [New Java Project] 창에서 > Project 명 입력 > [Finish]버튼
    • 입력한 Project 명으로 프로젝트가 생성되며, [Package Explorer] 뷰에서 트리 형태로 볼 수 있다.
  • 클래스 생성
    • [File > New > Class > New Java Class] 팝업 창
    • 작성하고자 하는 클래스 이름과 관련 정보들 입력 > [Finish]
    • 입력한 class명으로 클래스가 생성되며, [Package Explorer] 뷰에서 트리 형태로 볼 수 있다.
  • 코드 입력
    • 자바 에디터에 작성할 코드들을 입력한다.
  • 컴파일
    • Eclipse에서는 기본적으로 작성한 소스를 저장하면 자동 컴파일이 되어 소스 코드가 검증된다.
  • 실행
    • [Run > Run As > Java Application] 를 선택하면 작성한 자바 애플리케이션을 실행 시켜볼 수 있다.
    • 실행 후 출력이 있을 경우 아래의 [Console] 뷰에서 출력된 결과를 볼 수 있다.
  • 그 외 기능들
    • 코드 어시스트 (Code Assist)

      자바 코드 입력 중 [Ctrl + Space]를 눌러 입력하던 내용을 완성하는데 필요한 코드 (메서드, 템플릿)가 팝업 되어 나타나며, Enter를 눌러 선택하여 완성한다. [Window > Preferences > Preferences 팝업 창 > Java > Editor > Templates] 에서 템플릿을 편집할 수 있다.)
    • 빠른 수정 (Quick Fix)

      에러가 있는 경우 빨간색 밑줄과 함께 왼쪽의 마커바에 빨간색 (X) 표시가 나타난다. 이 때 빠른 수정 (Quick Fix) 기능을 사용할 수 있는 상황인 경우에는 위의 화면에서와 같이 빨간색 (X) 표시와 함께 전구 모양의 아이콘이 나타난다. 마커바에 있는 이 아이콘에 커서를 놓고 [Ctrl + 1]을 누르면 에러를 제거할 수 있는 가능한 몇 가지 방법들이 나타난다.
    • Quick Outline

      에디터에서 [Ctrl + O]를 누르면 Outline View와 같은 내용이 팝 업 창에 나타나며 찾고자 하는 메서드의 이름을 입력하면 입력하는 문자열에 해당하는 메서드들만이 팝업 창 목록에 나타나 빠르게 메서드로의 접근이 가능하다.
    • 소스 코드 네비게이션
      소스 코드에서 메서드, 필드 또는 클래스의 정의를 보고자 할 때 커서를 그 위에 놓고 F3를 누르면 정의된 곳으로 이동한다. 다시 제자리로 돌아오려면 [Ctrl + 왼쪽화살표]를 누르며, 정의된 곳으로 다시 이동하려면 [Ctrl + 오른쪽화살표]를 누른다.
      또 다른 방법으로는 커서를 메서드나 클래스 명 위에 놓고 [Ctrl]을 누르면 마우스 커서를 위치시키면 하이퍼링크로 바뀌며 마우스를 누르면 해당 메서드나 클래스가 정의된 곳으로 이동한다.
      원하는 행으로의 이동은 [Ctrl + L]을 눌러 나타나는 팝업 창에 이동할 행 번호를 입력 후 [OK]를 누른다.
    • Mark Occurrences

      특정 변수나 메서드들이 사용되고 있는 곳을 한꺼번에 찾아보고 싶을 때. 해당 변수나 메서드를 선택한 후 툴바에 있는 [Mark Occurrences] 버튼을 누른다. 변수, 상수, 필드, 메서드, 클래스 등에 모두 적용된다.
      조건에 맞는 항목들은 노란색 background의 문자열로 표시된다.
      editor 뷰의 스크롤 바 바로 오른쪽(2번 부분)에 방금 Mark된 항목들이 전체 화면 기준으로 상대위치로 표시되며, 흰 부분을 누르면 원하는 위치의 Mark된 항목으로 바로 가기를 할 수 있다.
    • 코드 생성

      Eclipse가 코드를 자동 생성해주는 기능이다. 업무 처리 로직의 자동 생성이 아니라 정의된 코드 템플릿을 적용시키는 것이다.
      적용은 소스 코드의 특정위치에서 [컨텍스트 메뉴 > Source > Override/Implement Methods부터 ~ Add Comment까지]를 선택하면 되며,
      코드 템플릿에 대한 설정은 [Windows > Preferences > Preferences 팝업 창 > Java > Code Style > Code Templates] 에서 한다.
    • 로컬 히스토리

      코드를 생성한 후 수정/저장을 하면 그 내역도 함께 저장된다. Package Explorer 뷰에서 히스토리 내역을 보고자 하는 파일을 선택하고 [컨텍스트 메뉴 > Compare With > Local History]를 선택하면 내역을 볼 수 있다.
      [컨텍스트 메뉴 > Replace With]를 이용하여 로컬 히스토리의 상태로 되돌리 수도 있다.
    • 코드 스타일

      코드 작성자 또는 코딩 표준을 담당하는 사람은 가독성의 향상과 작업의 일관성 유지를 위해 코딩 작성의 기준을 정할 수 있다. [Window > Preferences > Java > Code Styles > Formatter > Show > Show Profile 팝업 창]에서 코드 관련 여러 스타일들을 지정할 수 있다.
    • Hot Key
      Eclipse가 활서화 되어 있을 경우 [Ctrl + Shift + L]을 누르면 기 정의된 Hot Key 정보가 워크벤치 오른쪽 아래에 팝업 창으로 나타난다. 다시 [Ctrl + Shift + L]을 누르면 Hot Key를 재 정의할 수 있는 Preferences 팝업 창이 나타난다. [Window > Preferences... > General > Keys] 의 메뉴를 통해서도 Preferences... 창을 띄울 수 있다.
    • 검색
      [Ctrl + F] > [Find/Replace] 팝업 창 에 찾고자 하는 문자열을 입력하거나
      간단한 문자열을 찾고자 할 때에는 [Ctrl + J]를 눌러 워크벤치 아래의 상태바 메시지 표시 영역에 'Incremental File' 표시가 되면서 점증적 찾기 모드로 바꾼 후 찾고자 하는 문자열을 입력한다. 찾고 있는 문자열의 다음 위치를 계속해서 찾으려면 [Ctrl + J]를 누르며, [Ctrl + Shift + J]를 누르면 문자열의 이전 위치로 이동한다.
    • 주석 처리/풀기
      코드의 정해진 블록을 주석 처리 또는 주석 풀기를 할 수 있다.
      정해진 블록을 '/* ~ */'로 블록 단위로 주석 처리를 할 때 [코드에서 주석 처리할 블록 선택 > 컨텍스트 메뉴 > Source > Add Block Comment] 또는 [코드에서 주석 처리할 블록 선택 > Ctrl + Shift + /]를 누르며, 설정된 '/* ~ */' 블록 주석을 풀려면, [코드에서 주석 처리된 블록 선택 > 컨텍스트 메뉴 > Source > Remove Block Comment] 또는 [코드에서 주석 처리된 블록 선택 > Ctrl + Shift + \ ]를 누르면 주석이 풀린다.
      정해진 블록을 '//'로 블록 단위로 주석 처리를 할 때 [코드에서 주석 처리할 블록 선택 > 컨텍스트 메뉴 > Source > Toggle Comment] 또는 [코드에서 주석 처리할 블록 선택 > Ctrl + /]를 누르며, 설정된 '//' 블록 주석을 풀려면, [코드에서 주석 처리된 블록 선택 > 컨텍스트 메뉴 > Source > Toggle Comment] 또는 [코드에서 주석 처리된 블록 선택 > Ctrl + /]를 누르면 주석이 풀린다.

Debugging

  • 디버그 모드로 디버깅을 시작하기 전 집중적으로 검토하고자 하는 부분이 있을 경우 해당 코드에 브레이크포인트를 설정해 놓는다. (자바 에디터에서 검토할 코드 행의 마커바에서 마우스 더블 클릭을 하면 브레이크포인트가 설정되며, 다시 더블 클릭하면 해제된다.)
  • [Run > Debug > Debug 팝업 창 > 왼쪽의 'Configurations' 영역에서 실행할 클래스선택 > Debug 버튼 > Perspective 전환 메시지 창 > OK] --> 디버그 모드로 변환되며 디버그가 시작된다.
  • [Debug 팝업 창] 에서 'Stop in main'을 체크하고 [Debug]를 실행하면 브레이크포인트 설정과 관계없이 main()의 첫 코드부터 실행된다.
  • 설정된 브레이크포인트들은 Breakpoints View에 전부 리스트 되며 설정된 브레이크포인트는 Breakpoints View에서 해당 항목을 check, uncheck 함에 따라 활성화 또는 비활성화된다.
  • 루프 안에 설정된 브레이크포인트의 반복 횟수가 많을 경우 특정 회수에 대해서만 프로그램이 멈추게 하기 위해서는 브레이크포인트가 설정된 마커바에서 오른쪽 버튼의 팝업 메뉴의 [Breakpoint properties]를 눌러 나타나는 팝업 창의 [Hit Count]를 체크하고 방문 횟수를 입력한다.
  • Debug 진행: 설정한 환경 (breakpoint, hit count, stop in main…) 에 따라 프로그램의 진행을 수동으로 관리할 수 있다. 여기에서는 Debug View의 툴 바에 있는 메뉴들을 중심으로 Debug 진행 관리 방법을 살펴보자.
    • (1) Resume (F8): 멈췄던 쓰레드 다시 진행. 다음 브레이크포인트까지 계속 진행
    • (2) Suspend: 쓰레드를 멈춤
    • (3) Terminate: 프로그램 종료
    • (4) Step Into (F5): 스텝 단위로 프로그램 실행, 메서드가 호출될 경우 그 메서드 안으로 이동
    • (5) Step Over (F6): 메서드가 호출되더라도 메서드 안으로 이동하지 않고 현재 코드 진행
    • (6) Step Return (F7): 현재 메서드로부터 리턴. 메서드 호출부로 위치 이동
    • (7) Drop to Frame: 특정 메서드를 실행하다 그 메서드의 처음부터 다시 실행
    • (8) Step Filtering: 디버깅 도중 디버깅 대상이 되지 않는 메서드 안으로는 들어가지 않게 설정하는 곳. [Window > Preferences > Java > Debug > Step Filtering]에서 설정
  • Variables View: Debugging을 하며 관련된 변수들을 관찰할 수 있는 창이다. 현재 가용한 변수들이 나열되고 현재 진행 시점에 할당되어 있는 값을 볼 수 있다.
  • Display View: 현재 스택 프레임의 컨텍스트에서 실행할 수 있는 모든 종류의 수식을 입력 및 실행 가능. 원본 코드의 수정 없이 다양한 형태로 메서드나 변수 값들을 또는 그 조합 결과를 확인해 볼 수 있다. [Window > Show View > Display] 로 Display View를 활성화 시킨다. 관찰하고자 하는 수식이나 메서드들을 기술해 놓는다. Debugging을 하면서 현재 Display View에 기술된 수식 또는 메서드의 상태 값을 알기 위해서는 해당 항목을 선택한 수 뷰 툴바의 [Display Result of Evaluating Selected Test] 또는 [Ctrl + Shift + D]를 누르면 값을 보여준다. 잘못된 입력이나 값을 알 수 없는 상황일 경우 에러를 보여준다.
  • Inspect: Display View에서는 결과를 문자열로만 파악할 수 있다. 때문에 객체의 상태를 알기 위해서는 다른 방법을 사용해야 하며 그 중 하나가 Inspect 기능을 이용하는 것이다. Inspect 는 관찰 대상 수식을 선택하고 컨텍스트 메뉴에서 Inspect를 선택 (Ctrl + Shift + I)하는 것이다. 하지만 Inspect는 일시적인 관찰 방법이며 자세한 관찰을 하고 싶을 경우 [Ctrl + Shift + I]를 다시 눌러 

댓글

이 블로그의 인기 게시물

[메모] PostgreSQL에서 Insert 하는 경우 자동채번 PK가 중복에러 나는 경우

[C# & LINQ] 랜덤으로 데이터를 한 개 추출하는 방법

[react-native] uuid 생성이 에러가 날 때 대처법