Mac 이클립스 단축키 및 사용팁 모음 (수정 작업 중 현재: 미완)


===== 실행 =====
1. Command + F11 : 바로 전에 실행했던 클래스 실행
2. Alt + Command + x 후에 j : 현재 소스코드 실행 (메인 메서드가 있는 곳에서)

===== 소스 네비게이션 =====
1. Command + 마우스커서(혹은 F3) : 클래스나 메소드 혹은 멤버를 상세하게 검색하고자 할때
2. Command + [ , Command + ] : 이전, 이후 소스코드로 이동
3. Command + o : 해당 소스의 메소드 리스트를 확인하려 할때(quick outline)
4. F4 : 클래스명을 선택하고 누르면 해당 클래스의 Hierarchy(계층)을 를 볼 수 있다. 상속 트리 구조 확인

===== 문자열, 리소스 파일, 클래스 파일찾기 =====
0. Alt + Command + o : 단어 블록 지정(클래스 이름, 메소드 명, 변수명 커서 위치에서 그 단어블록을 지정해줌.

1. Command + k : 찾고자 하는 문자열을 블럭으로 설정한 후 키를 누른다.
2. Command + Shift + k : 역으로 찾고자 하는 문자열을 찾아감.
3. Command + j : 입력하면서 찾을 수 있음.
4. Command + Shift + j : 입력하면서 거꾸로 찾아갈 수 있음.
5. Command + f : 기본적으로 찾기

6. Control + h -> File seach에서 프로젝트나 워크스페이스 상의 파일 내 문자열 검색.

7. Command + Shift + R : 프로젝트나 워크스페이스 내의 파일 찾을 때 유용하다

8. Command + Shift + T : 클래스 파일 찾을 때 쓴다

9. Command + Control + d : 단어 뜻 검색(사전 단축키)

 



===== 소스 편집 =====
1. Alt + Space : 입력 보조장치(Content Assistance) 강제 호출 => 입력하는 도중엔 언제라도 강제 호출 가능하다. (이게 진짜 유용한 것 같다. 거의 모든 소스 자동완성 기능을 담당한다. 예를들어 import되지 않은 패키지의 클래스를 사용할경우 그냥 클래스 이름 타이핑하고 Alt+Space하면 import구분을 자동 추가해준다

  이건 원래 (Control + Space)인데 맥북 기본 전역 단축키(Spotlight 와 충돌나서 이클립스 단축키 설정에서 Alt + Space로변경해서 사용한다)


2. F2 : 컴파일 에러의 빨간줄에 커서를 갖져다가 이 키를 누르면 에러의 원인에 대한 힌트를 제공한다.
3. Command + L : 원하는 소스 라인으로 이동
   로컬 히스토리 기능을 이용하면 이전에 편집했던 내용으로 변환이 가능하다.
4. Control + Shift + Space : 메소드의 가로안에 커서를 놓고 이 키를 누르면 파라미터 타입 힌트를 볼 수 있다.
5. 메서드나 제어문 자동완성후 tab키로 이동하면서 각 인자들을 입력한다.
6. 줄단위 구간 선택후 Alt + Shift + 화살표 위, 아래 : 복사된다.

7. 대소문자 변경 : Command + Shift + x / Command + Shift + y (카멜케이스로 변수명을 자주 쓰는데 한글자 대소문자 변경할 때 유용하다

8. 문자열 변경 : Alt + Command + r (변수명 전체 변경에 유용)

9. 자동 import : Command + Shift + o 필수적이다. api나 소스외부의 클래스들을 자동으로 import 시켜준다.



===== 템플릿 사용 =====
1. sysout 입력한 후 Alt + Space 하면 System.out.println(); 으로 바뀐다. (syso까지만 입력해도 됨)

 자매품 syse 입력한 후 Alt + Space하면 System.err.println();  

2. try 입력한 후 Alt + Space 하면 try-catch 문이 완성된다.
3. for 입력한 후 Alt + Space 하면 여러가지 for 문을 완성할 수 있다.
4. 템플릿을 수정하거나 추가하려면 환경설정/자바/편집기/템플리트 에서 할 수 있다.

===== 생성자 , 메소드 쉽게 생성하기 =====

1. 클래스의 멤버를 일단 먼저 생성한다.
2. override 메소드를 구현하려면 : 소스->메소드대체/구현 에서 해당 메소드를 체크한다.

Alt+ Command +s -> ov : 오버라이드 메소드 작성 창 호출 (ov는 자판 그대로 o누르고 v누르란 소리다)

3. 생성자 생성하기

Alt+Shift+s -> ge :  필드 사용해서 생성자 작성(ge는 자판 그대로 g누르고 e누르란 소리다)
4. 기타 클래스의 멤버가 클래스의 오브젝트라면 : 소스->위임메소드 생성에서 메소드를 선택한다.

===== organize import =====
1. 자바파일을 여러개 선택한 후 소스 -> 가져오기 체계화 해주면 모두 적용된다. 

===== 주석 처리 =====
2. Command + / 해주면 여러줄이 한꺼번에 주석처리됨. 주석 해제하려면 한번더 Ctrl + /로 하면 됨.
3. 범위 지정후 Control + Command + / 범위 주석 설정됨 해제는 Control + Command + \

===== 소스 코드 형식 및 공통 주석 설정 =====
1. 환경설정 -> 자바 -> 코드 스타일 -> 코드 포멧터 -> 가져오기 -> JYJ프로파일.xml 을 불러다가 쓰면 된다.
2. 또한 다수의 자바파일에 프로파일을 적용하려면 패키지 탐색기에서 패키지를 선택한 후 소스 -> 형식화를 선택하면 된다.
3. 환경설정 -> 자바 -> 코드 스타일 -> 코드 템플리트 -> 가져오기 -> JYJ템플리트.xml 을 불러다가 쓰면 된다.

===== 창 변환 =====
1. 에디터가 여러 파일을 열어서 작업중일때 Command + F6 키를 누르면 여러파일명이 나오고 F6키를 계속 누르면 아래로
2. Command + Shift + F6 키를 누르면 위로 커서가 움직인다.
3. Command + F7 : 뷰간 전환
4. Command + F8 : 퍼스펙티브간 전환
5. F12 : 다른 뷰로 이동했을때 Editor로 빠르게 이동시 사용창 관련

6. Fn  + Control + 화살표 상/하 : 편집창 탭간 이동

7. Control + M : 전체화면모드 - Package Explorer, Console, Outline 등 View들을 다 없애고 소스 창만 보고 싶을때 사용

 

===== JAVA Doc 생성 =====
1. 프로젝트 -> Javadoc 생성

===== 내보내기 =====
2. 해당 프로젝트를 zip 행태로 압축해서 보관할 수 있다.

===== 자바 찾아보기 perspective =====
3. 해당 프로젝트를 보다 편리하게 한번 둘러보는데 좋다.

===== 스크랩북 =====
1. 스크랩북을 이용하면 자바파일을 만들어 테스트 해보지 않고도 간단하게 테스트 해 볼 수 있다.
2. 패키지 탐색기에서 신규 -> 기타 -> 자바 -> 자바 실행/디버그 -> 스크랩북 페이지 선택

===== 디버그 =====
1. F5(Step Into) : 현재의 명령문이 호출되는 메소드 속으로 진행하여, 그 첫 문장을 실행하기 전에 멈춘다.
   하지만 자바 라이브러리 클래스 수준까지 들어가므로 단계필터 사용을 체크(Shift+F5)를 하면 필터를 설정한 
   클래스에 대하서는 Step Over 기능과 같은 기능을 수행한다.
2. F6(Step Over) : 현재의 명령문을 실행하고 다음 명령문 직전에 다시 멈춘다.
3. F7(Step Return) : 현재의 메소드에서 리턴한 직후에 다시 멈춘다.
4. F8(Resume) : 멈추어 있던 쓰레드를 다시 계속 실행한다.
5. Display view(표시) : 창 -> 보기표시 -> 표시 선택하여 소스상에서 필요한 부분을 선택해서 실행시켜 볼 수 있다.
   한 순간의 값만 필요할 때 볼 수 있는 반면에 아래놈은 계속적으로 값이 변하는 것을 확인 할 수 있다.
6. Expression view(표현식) : 복잡한 식 혹은 객체를 디버깅 하면서 계속 볼 수있는 창이다.
   마우스 오른버튼 -> 감시 표시식 추가 선택한 후 사용한다.
   환경설정 -> 자바 -> 디버그 -> 세부사항 포멧터 선택 후 보기 편한 식으로 편집하면 Expression View 에서 결과를 
   실시간으로 확인 할 수 있다.
7. 디버깅 하면서 소스를 수정하고 프로그램을 다시 시작할 필요 없이 계속 디버깅을 진행 할 수 있다.
   다만 메소드를 추가하거나 필드를 추가하면 프로그램을 다시 시작해야 한다.
8. Drop to Frame(프레임에 놓기) 는 정말 모르겠다.
9. 디버깅 작업을 할때 해당 라이브러리의 소스코드를 첨부하지 않으면 진행상황을 볼 수 없을 경우
   해당 라이브러리에 소스코드를 첨부할 수 있다. 해당 프로젝트 -> 특성 -> Java 빌드경로 -> 라이브러리 -> 소스참조
   편집 버튼을 눌러서 첨부 한다.

===== 도움말 =====
"JDT 팁과 요령"이라고 치면 여러가지 흥미로운 팁이 나온다.

===== JUnit =====
별로 추천하고 싶지 않은 툴임.

===== Refactoring =====
1. Pull Down : 수퍼클래스의 멤버나 메소드를 하위 클래스로 내리는 행위
2. Push Up : 하위 클래스의 멤버나 메소드를 상위 클래스로 올리는 행위

===== CVS =====
1. CVS 서버로는 윈도우에 CVSNT 최신버젼을 설치하고, [컴퓨터 관리]를 통해서 사용자를 추가한다.
 - CVSNT 를 설치할때 윈도우의 경우 Repositories 를 추가할때 접두어를 사용하지 말고 디렉토리 풀이름(d:/cvs) 이런식
   으로 등록해야 Eclipse 와 에러없이 동기화가 잘 된다.
2. Eclipse 에 CVS 저장소 perspective 에서 새로운 저장소를 등록한 후 HEAD 에서 해당 프로젝트를 체크아웃하면
   자바 perspective 에 등록되는 것을 확인할 수 있다.


출처 : Tong - bunny827님의 이클립스통 , 몇가지 수정하고 추가해봤습니다. 빨간 글씨는 제가 자주 쓰는 기능입니다.

Posted by 제로스틴
,

이것도 개인적인 견해지만,

일반 사용자는 윈도우OS만 알아도 충분하다.

하지만 개발자는 리눅스는 필수로 알아야 된다.

왜냐구?


윈도우는 유료 운영체제이기 때문에 대부분의 회사는 서버를 돈 아끼려고 리눅스로 운영한다.

이 말은 리눅스는 오픈소스이고 공짜이기 때문이다. (쉽게 와닿는 말을 사용하려고 원색적인 표현으로 쓰겠다. )


리눅스의 개발환경 자체가 옛시절엔 천문학적인 금액(몇 억이라고 생각해보자)의 슈퍼컴퓨터를 개인은 소유할 수 없었기 때문에

비싼 슈퍼컴퓨터를 멀리서 여러사람이 터미널(cmd창 or Dos창을 떠올려라.)로 원격 접속해서 제어하는 방식을 썼었다.

그만큼 다중 사용자의 다양한 작업들을 소화할 수 있게끔 고민할 수 밖에 없었기 때문에 윈도우보다 더 다중 작업에 대한 노하우가 축적되 있는 운영체제라 할 수 있다. 그리고 서비스를 제공하는 서버라는 역할을 안정적으로 잘 수행할 수 있다.




오픈소스의 장점은 여러 능력자들의 소스를 자유롭게 볼 수 있고 뜯어 고쳐볼 수도 있다.

그리고 돈 없는 개발자 학생 입장에서 접근하기도 괜찮다.


안드로이드는 우분투 리눅스 커널 위에서 동작하기 때문에 안드로이드 NDK(C, C++) 개발에도 상식적으로 알아두면 유용하다. 


공짜고, 안정적이고, 대부분 자신이 취업할 직장에서 보게될 운영체제니까. 익히라는 말이다

Posted by 제로스틴
,

일반적으로 App 개발의 범위는 개인적으로 이렇게 생각합니다.

학문적인 어려운 말 쓰지 않고 쓰겠습니다.


문자, 글자들(문자열), 숫자들, 파일들, 그림들, 동영상들, ,3d 모델들!?(3d 지형지물, 캐릭터들), 데이터 정보표 들(데이터베이스, json, xml 등), 그리고 기기들의 센서api(gps, 자이로스코프, 카메라, 조도 센서)들을 가지고 

인터넷이나 네트워크에 연결되서 통신기능을 사용하는 프로그램들을 개발하는 것을 통칭한다고 생각됩니다.(물론 통신 기능 없는 계산기나 그림판 같은 것들은 로컬 app이라고 부릅니다.) 보통 Java, python, C++로 만듭니다.

그러니까 안드로이드 SDK를 사용해서 만드는 app들은 이 범위 안에있는 것들로 개발을 한다고 생각하시면 됩니다. NDK는 논외로 하겠습니다.


책에서는 와닿게 설명해 놓질 않고 항상 학문적으로 고상하게 표현하기 때문에... 감 잡기도 어렵고, 추상적이지요.



'Dev AndroidApp for Mac' 카테고리의 다른 글

Mac에서 adb path(환경변수) 설정하기.  (0) 2015.02.17
Posted by 제로스틴
,