NetBeans 1. 도구 개요 2. 설치 및 실행 3. 주요 기능 4. 활용 예제
1. 도구 개요 1.1 도구 정보 요약 도구명 소개 특징 주요기능 NetBeans 라이선스 CDDL, GPLv2 (http://trac.edgewall.org/) 통합 개발 환경(IDE : integrated development environment)으로써, 프로그래머가 프로그램을 작성하고 컴파일하여 디버그하고 배포하는데 사용하는 툴 자바로 개발되었지만, 대부분의 프로그래밍 언어를 지원 여러 언어 지원 : JAVA, PHP, Groovy, C/C++ 기본 지원, 플러그인 등을 통해 SOA, python등 지원 NetBeans Modules 프로젝트를 통한 도구의 추가 확장 플러그인을 통한 도구의 확장 Tomcat / Glassfish server를 통한 도구 내 웹 서버 연동 가능 코드 편집, 문법 강조, 코드 자동 완성 컴파일, 빌드, 디버그, 플러그인 형상관리도구 연계 실행환경 Windows, Linux, Mac OS X 등 사전설치도구 JDK 7 이상 카테고리 구현 최신버전 8.1 (2015. 11) 관련도구 Eclipse 2
1. 도구 개요 1.2 스크린 캡쳐 및 주요 기능 Java, HTML5/JavaScript, PHP, C++ 등 다양한 언어 지원 소스 편집, 컴파일, 빌드, 디버깅 3
2. 설치 및 실행 세부 목차 2.1 설치 개요 및 사전설치 사항 확인 2.2 다운로드 2.3 설치 2.4 실행 4
2. 설치 및 실행 2.1 설치 개요 및 사전설치 사항 확인 (1/2) NetBeans는 두가지의 설치 방법이 존재 - JDK 의 번들로 JDK와 함께 설치 - JDK가 설치되어 있는 상태에서 NetBeans만 별도 설치 본 지침에서는 JDK가 설치되어 있는 상태에서 NetBeans만 별도 설치 기준 으로 작성 5
2. 설치 및 실행 2.1 설치 개요 및 사전설치 사항 확인 (2/2) Windows의 경우 아래와 같이 Command창에서 java version 을 실행하여 설 치된 JDK 설치 여부를 확인한다. JDK 1.7 이상을 권장한다. 6
2. 설치 및 실행 2.2 다운로드 NetBeans 홈페이지 접속 - https://netbeans.org - 화면 우측 Download 클릭 7
2. 설치 및 실행 2.2 다운로드 J2EE 번들 선택 8
2. 설치 및 실행 2.3 설치 다운로드 받은 설치 파일 실행 애플리케이션 서버는 Tomcat을 선택하고 Next 클릭 9
2. 설치 및 실행 2.3 설치 라이선스 동의 10
2. 설치 및 실행 2.3 설치 설치 위치와 JDK 설치 위치 지정 11
2. 설치 및 실행 2.3 설치 Tomcat 설치 위치 지정 12
2. 설치 및 실행 2.3 설치 설치 설정 확인 및 설치 시작 13
2. 설치 및 실행 2.3 설치 설치 완료 14
2. 설치 및 실행 2.4 실행 바탕화면의 NetBeans 아이콘으로 실행 15
3. 주요 기능 세부 목차 3.1 화면 구성 3.2 다양한 프로젝트 템플릿 3.3 소스 작성 지원 3.4 컴파일 및 빌드 3.5 디버깅 3.6 Java Swing GUI Builder 3.7 Profiling 3.8 HTML5 지원 3.9 JavaScript 지원 3.10 Java EE 3.11 Java 16
3. 주요 기능 3.1 화면 구성 툴바, 프로젝트 창, 네비게이터 창, Code View창, Output 창으로 구성 Tool Bar Project / File / Service Explorer Code View Navigator Explorer Output / Debug / Status 17
3. 주요 기능 3.2 다양한 프로젝트 템플릿 Java, JavaFX, Java Web, Java EE, HTML5/JavaScript 등 다양한 프로젝트 템 플릿 제공 18
3. 주요 기능 3.3 소스 작성 지원 코드 자동 완성, 추천 팝업, 문법 검증, 괄호/대괄호 매칭, 코드 접기, Refactor 등 다양한 소스 작성 지원 19
3. 주요 기능 3.4 컴파일 및 빌드 소스 저장 시 자동 컴파일 설정 가능 20
3. 주요 기능 3.4 컴파일 및 빌드 Maven과 Ant를 기본으로 지원하며 플러그인을 통해 Gradle도 지원 Maven Ant Gradle 21
3. 주요 기능 3.5 디버깅 특정 위치에 중단점(BreakPoint)를 설정할 수 있고, 중단점에 조건 적용, Group 별 중단점 설정 등 가능 22
3. 주요 기능 3.5 디버깅 Step into, Step out, Step over, Step over expression, Run to cursor 로 실 행 흐름 추적 가능 디버깅 중 소스 코드 변경 사항 즉시 반영 가능 23
3. 주요 기능 3.6 Java Swing GUI Builder 화면에서 Swing으로 작성된 GUI 컴포넌트를 드래그 앤 드랍 방식으로 작 성 가능 24
3. 주요 기능 3.7 Profiling 실행 중인 프로그램의 CPU, 메모리, 쓰레드 등의 자원 사용 현황 분석 가능 - Profiling하기 전에 Profiler Calibaration 실행 25
3. 주요 기능 3.8 HTML5 지원 Cordova 하이브리드 애플리케이션 개발 가능 안드로이드와 ios 브라우저 지원 CSS 전처리기인 SASS, LESS 지원 Browser Switcher 기능 네트워크 모니터링 26
3. 주요 기능 3.9 JavaScript 지원 AngularJS, Knockout, ExtJS 등 JS 프레임워크 지원 JSON beautify 기능 Grunt, Gulp, Mocha, Karma, Selenium, Jade 지원 NetBeans Chrome Plugin으로 Shadow DOM 지원 JSON Beautifier Gulp 태스크 매니저 지원 Karma 테스팅 지원 27
3. 주요 기능 3.10 JavaEE JavaEE 프로젝트에서 HTML5 기능 이용 가능 JSF 2.2 와 FacesComponents의 쉬운 사용을 위한 마법사 기능 코드 자동 완성 향상 28
3. 주요 기능 3.11 Java JDK 8이 설치된 경우 Compact Profile, Lamda, 반복 애노테이션 등 JDK 8 기능 지원 Compact Profile 람다 (Lamda) 반복 애노테이션 29
3. 주요 기능 3.12 Node.js 지원 JavaScript로 서버 프로그래밍을 가능하게 해주는 Node.js 지원 30
4. 활용 예제 세부 목차 4.1 예제 소개 4.2 프로젝트 생성 4.3 예제 소스 작성 4.4 디버그 4.5 예제 실행 31
4. 활용 예제 4.1 예제 소개 디자인 패턴의 하나인 컴포지트 패턴(Composite Pattern)을 구현한다. Composite 패턴은 탐색기에 비유할 수 있다. Component를 구현하는 Leaf가 파일, Composite가 폴더라고 볼 수 있다. Composite는 Leaf를 포함할 수 있고, 다른 Composite를 포함할 수도 있다. Composite에 포함된 것이 Leaf인지 Component인지에 관계 없이 동일한 메서드로 호출해서 처리할 수 있다. 예제에서는 3개의 Composite와 4개의 Leaf를 만들어서 가장 상위에 있는 Composite에 포함된 원소를 콘솔에 표시한다. 프로젝트 생성, 소스 작성, 디버그, 빌드 및 실행까지 개발 전 과정을 NetBeans로 진행하는 방법을 알아본다. 32
4. 활용 예제 4.2 프로젝트 생성 File > New Project > Java > Java Application 선택 후 Next 클릭 33
4. 활용 예제 4.2 프로젝트 생성 프로젝트 이름, 위치, Main Class 생성 여부 및 이름 지정 후 Finish 클릭 34
4. 활용 예제 4.2 프로젝트 생성 프로젝트가 생성되고 메인 클래스 작성화면이 자동으로 표시된다. 35
4. 활용 예제 4.3 예제 소스 작성 아래와 같이 소스 작성 public class CompositePattern { public static void main(string[] args) { Leaf leaf1 = new Leaf("leaf1"); Leaf leaf2 = new Leaf("leaf2"); Leaf leaf3 = new Leaf("leaf3"); Leaf leaf4 = new Leaf("leaf4"); Composite composite1 = new Composite("List1"); Composite composite2 = new Composite("List2"); Composite composite3 = new Composite("List3"); composite1.add(leaf1).add(leaf2); composite2.add(leaf3).add(leaf4); composite3.add(leaf1).add(composite1).add(leaf2).add(leaf3).add(composite2).add(leaf4); interface Component { String getvalue(); } class Leaf implements Component { private String name; } public Leaf(String name) { this.name = name; } @Override public String getvalue() { return "("+ name +")"; } } } System.out.println(composite3.getValue()); 36
4. 활용 예제 4.3 예제 소스 작성 아래와 같이 소스 작성 class Composite implements Component { private String name; private List<Component> components = new ArrayList<Component>(); public Composite(String name) { this.name = name; } @Override public String getvalue() { StringBuilder sb = new StringBuilder(); sb.append(name).append(":["); Iterator<Component> iterator = components.iterator(); while (iterator.hasnext()) { sb.append(iterator.next().getvalue()); if (iterator.hasnext()) sb.append(", "); } sb.append("]"); return sb.tostring(); } } public Composite add(component component) { components.add(component); return this; } 37
4. 활용 예제 4.4 디버그 아래와 같이 행 번호 88을 클릭해서 중단점 설정 38
4. 활용 예제 4.4 디버그 디버그 모드 실행 버튼을 클릭 39
4. 활용 예제 4.4 디버그 중단점을 설정한 88행에서 실행이 멈추면서 현재 변수들의 값 확인 가능 40
4. 활용 예제 4.4 디버그 Step Over를 클릭해서 한 행을 실행한다. 41
4. 활용 예제 4.4 디버그 components에 원소가 하나 추가되어 size가 1 증가된 것 확인 42
4. 활용 예제 4.4 디버그 중단점을 다시 클릭해서 중단점을 해제하고, 실행 재개 버튼을 클릭해서 프로그램을 끝까지 실행한다. 실행 재개 중단점 해제 43
4. 활용 예제 4.4 디버그 가장 상위의 Composite인 List3 내에 포함된 모든 원소가 Output 창에 표시된다. 44
4. 활용 예제 4.5 예제 실행 디버그 없이 프로그램을 실행하려면 실행 버튼을 누르면 된다. 45