====== Eclips Manual ======
==== 설치 - 실행 ====
===== Eclips - Java 단축키 =====
====패키지, 클래스, 인터페이스 생성====
**src 소스폴더나 프로젝트, 패키지를 먼저 선택**한 이후
**Alt+Shift+N**
앞 글자를 따서 **"P"** 패키지 / **"C"** 클래스 / **"I"** 인터페이스 / **"E"** Enum
{{:programmer:ide:화면_캡처_2022-01-07_184732.png?400|}}
**초기 구문 셋팅**
{{:programmer:ide:화면_캡처_2022-01-07_190227.**png?400|}}
이후 **Alt+V** -> public static void main(String[] args) 자동 삽입 체크
++++주석이 자동 삽입되지 않게 하려면|
1. 이클립스의 Window -> Preferences 메뉴를 클릭한다.\\
2. Java -> Code Style -> Code Templates 를 선택한다.\\
3. Code -> Method body 를 선택한다.\\
4. Edit 버튼을 클릭한 후, // ${todo} 로 시작하는 라인을 제거한다.\\
++++
==== 생성자 / 메소드 만들기 단축키 ====
**Alt+Shift+S ->O** 필드 선택 후 OK : 해당 필드를 초기화하는 **생성자** 생성
**Alt+Shift+S ->S, R** 원하는 필드 선택 후 OK : 해당 필드의 **get / set 메소드**가 생성
{{:programmer:ide:123412.png?400|}}
{{:programmer:ide:asdfasd.png?400|}}
==== 자동 완성 기능 ====
현재 사용할 수 있는 객체, 만들 수 있는 객체 및 Java에서 제공해주는 기본 객체를 불러온다.
**Ctrl + spacebar**
{{ :programmer:e1.png?600 |}}
=== 문장 자동 완성 ===
sysout
**sysout** 입력 후 (Ctrl + spacebar)
System.out.println()
++++안된다면 설정|
Windows>Preferences>Java>Editor>Templates 에서\\
sysout 항목 edit -> context 항목을 Java statement 에서 Java 로 변경
++++
==== 주석처리 ====
한 줄 주석 \\
**Ctrl + /**
// String col = null;
여러 줄 주석\\
**Ctrl + Shift + /**
/*
* String col = null;
*
* col = "userId";
*/
==== 특정 라인 코드 이동 및 복사, 삭제 =====
특정 라인 한 줄 이동\\
**alt + 방향키(위, 아래)**
특정 라인 코드 복사 (위 누르면 위로 복사 아래 누르면 아래로 복사)\\
**Ctrl + alt + 방향키(위, 아래)**
특정 라인 한 줄 삭제\\
**Ctrl + D**
==== Undo(되돌리기) || Redo(앞으로) ===
되돌리기(Undo)\\
**Ctrl + Z**
앞으로(되돌리기를 취소)(Redo)\\
**Ctrl + Y**
==== import 코드 정리 ====
**Ctrl + Shift + O**
**import 코드 정리 전 (쓰지 않는 import라 노란 줄이 떠 있다.)**
{{ :programmer:e8.png?600 |}}
**import 코드 정리 후**
{{ :programmer:e8_.png?600 |}}
==== 코드 들여 쓰기(정리하기) ====
**Ctrl + Shift + F**
**들여 쓰기 전**
{{ :programmer:e9.png?600 |}}
**들여 쓰기 후**
{{ :programmer:e10.png?600 |}}
==== 특정 문자열 찾기 ====
특정 문자열 찾을 파일 클릭 후 **Ctrl + F**\\
**Find input 창 : 찾을 문자열 내용**\\
{{ :programmer:e2.png?300 |}}
**입력 후 Enter or Find 버튼 클릭**
==== 특정 문자열을 다른 문자열로 변경하기 ====
특정 문자열 찾을 파일 클릭 후 **Ctrl + F**
**Find input 창 : 찾을 문자열 내용**\\
**Replace with : 찾은 문자열을 바꿀 내용(바꾸려는 문자열)**\\
{{ :programmer:e3.png?300 |}}
설명 : 해당 파일에 있는 userNicknameCheck 문자열을 userNick으로 바꾼다.\\
**Replace** : 제일 먼저 찾는 한 개의 문자열만\\
Replace All : 이 파일에 있는 모든 특정 문자열을 변경한다.\\
==== 프로젝트 전체에서 특정 문구(텍스트) 포함 File 검색 ====
검색할 프로젝트 클릭 후
단축키 사용 : **Ctrl + H**\\
OR\\
{{ :programmer:e4.png?600 |}}
**File Search 탭** 클릭
{{ :programmer:e5.png?600 |}}
**Containing text** : 검색할 문구(텍스트) 입력
입력 후 **Search** 버튼 클릭
**검색 옵션 살펴보기**
{{ :programmer:e6.png?600 |}}
**Case sensitive(체크박스)** : 대문자/소문자를 구분할 것인가? \\
**Regular expression(체크박스)** : 정규식 확인할 것인가? (정규식으로 검색할 것인가?) \\
**Whole word(체크박스)** : 특정 단어로 끝나는 것(잘리는 것)으로 검색할 것인가?
-예) "Whole" 단어를 검색했을 때
**Whole word 옵션을 체크 안 했을 경우** "Whole" 단어를 포함한 전체로 검색됨 Whole word,Whole~\\
**Whole word 옵션을 체크했을 경우** "Whole" 단어로 딱 잘린 것들만 검색됨 포함 X
==== 원하는 라인 줄로 이동(Go to Line) ====
원하는 라인으로 이동\\
**Ctrl + L**
===== 자바 작업 파일의 구조도 =====
{{ :programmer:ee1.png?600 |}}
=== [ 워크스페이스(WorkSpace) ] ===
-하나의 프로그램 단위.
-규모가 큰 프로그램은 여러 프로젝트로 이루어질 수 있음.
-가장 상위 폴더로 생성됨.
{{ :programmer:ee2.png?600 |}}
*워크스페이스 명명 규칙 - 공통 규칙에 따름
----
=== [ 프로젝트(Project) ]===
-하나의 실행 파일을 생성하기 위한 단위이다.\\
-워크스페이스의 하위 폴더로 생성됨.
{{ :programmer:ee3.png?600 |}}
**프로젝트 생성 전**
{{ :programmer:ee4.png?600 |}}
**프로젝트 생성 후**
* **프로젝트 명명 규칙**
-대소문자 구분없이 시작 가능.
-하지만 첫 문자를 비롯해 모든 단어는 대문자로 시작하는 것을 권장.
----
=== [ 패키지(Package) ] ===
-클래스를 기능별로 묶어둔 일종의 카테고리이다.
-하나의 패키지만 만들 수도 있고 "상위패키지.하위패키지.최하위패키지" 형태의 트리 구조를 만들 수 있다.
-상위 패키지 폴더 아래에 하위 패키지 폴더가 생성됨.
-소스코드를 저장하는 ".java" 파일의 패키지는 "src" 폴더에 저장됨.
-.java 파일을 컴파일해서 생성된 ".class" 파일의 패키지는 "bin" 폴더에 저장됨.
{{ :programmer:ee5.png?200 |}}
**생성된 프로젝트 폴더**
{{ :programmer:ee6.png?600 |}}
**패키지를 생성**
패키지를 "상위패키지.하위패키지.최하위패키지" 형태의 트리구조로 생성하니까
실제로 세 개의 폴더가 생성된 걸 확인할 수 있습니다.
* **패키지 명명 규칙**
-단어 갯수와 상관없이 소문자로 시작.
-모두 소문자로 사용하는 것을 권장. (가독성을 위해서는 위반해도 됨)
-가급적 한 단어 사용을 권장. (상위 패키지 한단어, 하위 패키지 한단어씩)
-여러 사람 또는 기업과 협업할 경우 표준 패턴을 따름. (개인용으로 쓸 때는 무의미)
----
=== [ 클래스(Class) ] ===
-비슷한 유형의 메소드(함수)와 변수를 모아놓은 소스코드.
-실제로 작성된 최하위의 소스코드 파일.
-이클립스 에디터에 우리가 작성하는 코딩은 하나의 클래스를 생성하는 작업이다.
-클래스가 속한 최하위 패키지의 폴더에 저장됨.
-클래스의 파일명은 클래스의 이름과 동일해야 함.
{{ :programmer:ee7.png?600 |}}
**실제 클래스를 생성**
{{ :programmer:ee8.png?600 |}}
bin\park\jin\seong 폴더에 Practice .class파일 생성
{{ :programmer:ee9.png?600 |}}
src\park\jin\seong 폴더에 Practice .java파일 생성
* **클래스 명명 규칙**
-대문자로 시작.
-명사로 시작.
-두 번째 단어부터는 소문자도 되지만 대문자로 시작하는 것을 권장.
----
=== [ 메소드(methods) ] ===
-클래스에 정의되어있는 함수.
-하나의 클래스에서 다른 클래스의 함수를 실행할 때 실제로 이 메소드를 실행하는 것.
-패키지A.패키지B.패키지C.클래스D.메소드 의 형태로 불러와서 실행함.
* **메소드 명명 규칙**
-소문자로 시작
-동사로 시작
-두 번째 단어부터는 소문자도 되지만 대문자를 권장.
**소문자 시작과 대문자 시작이 강제되는 이유는 패키지.클래스 형태로 호출되는 구조를 사용하기 때문에
클래스와 패키지를 구분하기 위함**입니다.
쉽게 생각하면 마지막에 대문자로 시작되는 것을 클래스라고 생각하시면 됩니다.
----
{{ :programmer:ee10.png?600 |}}