희렌버핏

1장 자바 시작하기 본문

Java/이것이 자바다

1장 자바 시작하기

Oliviakim 2019. 2. 6. 11:14

1.1 프로그래밍 언어란

컴파일러 : 소스를 기계어로 번역해주는 소프트웨어


1.2 자바란

1.2.1 자바 소개

- 1995 Sun Microsystems에서 발표한 프로그래밍 언어

- 처음에는 가전 제품에서 사용할 목적인 오우크(Oak) 언어에서부터 시작

- 인터넷 프로그래밍 언어로 발전하면서 자바라는 이름으로 변경, 전 세계적으로 사용

- 2010 Oracle에서 Sun 인수하여 Java 개발, 관리, 배포 주관


1.2.2 자바 특징

① 이식성이 높음

- 여러 운영체제를 옮겨다니며 실행할 수 있는 성질 (class 파일)

② 객체 지향 언어

- OOP (Object Oriented Programming) : 부품 객체들을 먼저 만들어 조합해 전체 프로그램을 완성하는 기법

- 캡슐화, 상속, 다형성 기능 완벽하게 지원

* 'VC++', 'C++' : 자바와 비슷하나 java가 더 객체지향 언어, 처음에는 main이라는 함수를 기반으로 시작하기 때문에 함수지향 언어의 특징을 가지고 있다. 

* 'Java', 'C#' : 처음 실행할때부터 class라는 파일을 만들어서 실행하게 되어 있기 때문에 완전한 객체 지향 언어

③ 함수적 스타일 코딩을 지원

- 단순한 함수를 호출해서 사용하는 코딩 방식

- 대용량 데이터를 지원할 때, 일부분을 함수적 스타일로 코딩하는 것이 더 효율적

- 람다식을 지원 (간결한 코드, 컬렉션 요소를 필터링/매핑/그룹핑/집계 처리시 주로 사용

④ 메모리를 자동으로 관리

- 가비지 콜렉터 소프트웨어가 자동으로 실행하면서 사용하지 않는 객체를 제거해준다.

⑤ 다양한 애플리케이션 개발 가능

- 명령창이 있는 콘솔프로그램, UI 애플리케이션 (데스크탑 윈도우 프로그램), 서버 애플리케이션, 모바일 앱 (안드로이드) 등을 개발

- 다양한 애플리케이션을 개발하기 위해 개발도구와 API를 제공해야 한다.

- Java SE(Standard Edition) : 기본 에디션

- 자바 프로그램을 실행하기 위한 최소한의 실행환경(JVM)을 정의

- 자바 프로그램들이 공통으로 사용하는 개발 도구API를 정의

- 구현체 : JDK (Java Development Kit)

- Java EE(Enterprise Edition) : 서버 애플리케이션 개발 에디션

- 구현체 : WAS(Web Application Server) - Tomcat, WebLogic, Jeus, Jboss,...

- Java ME(Micro Edition) : 임베디드 or 모바일 장비를 위한 개발 도구와 API 정의

⑥ 멀티 스레드를 쉽게 구현할 수 있다.

- 동시 여러 작업, 대용량 작업 빠르게 처리 => 병렬 처리 필요 => 멀티 스레드 필요(클래스 형태로 제공하고 있음)

- 운영체제 별로 멀티스레드를 이용하는 API가 다름 -> Java API로 일관된 생성 및 관리

⑦ 동적 로딩(프로그램 실행 도중에 클래스들을 메모리로 로딩해서 사용하는 것) 지원

- 미리 객체를 만들어 놓지 않고 필요한 시점에 동적으로 로딩해서 객체를 생성할 수 있다.

- 유지보수시 특정 객체만 쉽게 수정 및 교체 가능.

⑧ 막강한 오픈소스 라이브러리가 풍부

- 자바는 오픈 소스 언어이므로 자바로 개발된 라이브러리도 오픈 소스가 많다.

- 노력과 시간 비용을 줄이고(직접 코딩), 유지 보수의 편리성을 위해 사용할 수 있다.


1.2.3 자바 가상 기계(JVM)

- 자바 프로그램(바이트 코드)을 해석하고 실행할 수 있는 운영체제

- 실 운영체제를 대신해서 자바 프로그램을 실행하는 가상이 운영체제

- 운영체제별로 프로그램 실행/관리 방법 다르기때문에, 운영체제와 자바 프로그램을 중계하는 JVM을 두어 동일한 실행 결과가 나오도록 설계

- JVM은 운영체제에 종속적이므로 운영체제에 맞게 설치 필요

- 한번의 실행으로 어디서나 실행가능하다는 장점이 있지만, JVM에 의해 번역되고 실행되기 때문에 'C', 'C++' 보다는 느리다는 단점이 있다.


1.3 자바 개발 환경 구축

1.3.1 자바 개발 도구(JDK) 설치

- Java SE 구현체의 종류

- JDK(Java Development Kit, JRE + 개발도구) : 개발하고 실행하기 위해 반드시 설치, 

- JRE(Java Runtime Environment, JVM(자바 프로그램을 실행하는 가상의 운영체제) + 표준 클래스 라이브러리) : 실행만 할 경우 설치

- JDK(Java Development Kit) 설치

- 설치 파일 다운로드 사이트 : http://www.oracle.com

- 운영체제별, CPU 종류별로 설치 파일이 다름

- 환경 변수 생성 및 수정 (콘솔에서 컴파일 실행을 위해 jdk의 경로를 지정해줌)

- "JAVA_HOME"(직접 사용자가 만들어야됨) 생성 : JDK 설치 디렉토리로 지정

(콘솔이 JDK의 경로를 찾기 위해 "JAVA_HOME"이라는 것을 통해 찾아갈 수 있게 해줌, 서버가 구동될 때 JDK의 설치 위치를 알기위해 사용)

- "PATH"(운영체제 설치하면서 이미 만들어져 있는 환경변수) 수정 : %JAVA_HOME%\bin; 추가 (%JDK 환경변수 이름%하위폴더)

(임의의 디렉토리에서 자바 명령어(javac.exe, java.exe)를 실행시키기 위해 설정)

----------------------------------------------------------------------------------------------------

제어판 -> 시스템 속성 -> 고급

-> 환경 변수(운영체제가 실행하면서 프로그램한테 문자 정보를 제공할 목적으로 문자 정보를 저장해 놓은 저장소)

-> (上) 사용자 변수 : 현재 로그인한 사람한테만 적용되는 환경 변수 / (下) 시스템 변수 : 이 pc를 사용하는 모든 사용자한테 적용되는 환경 변수 => JAVA_HOME과 PATH를 수정

-> 시스템 변수에서 새로만들기

->

1. JAVA_HOME 설정

변수 이름 : JAVA_HOME

변수 값 : C:\Program Files\Java\jdk1.8.0_201(JDK 설치 디렉토리)

=> 주로 서버가 구동 될 때 JDK의 설치 위치를 알기 위해 사용됨

2. PATH 설정

변수 값 편집 : "PATH" 수정 - %JAVA_HOME%\bin; 추가

=> 임의의 디렉토리에서 자바 명령어(javac.exe, java.exe)를 실행시키기 위해 설정

-----------------------------------------------------------------------------------------------------


1.3.2 API 도큐먼트

- JDK에서 제공하는 표준 클래스 라이브러리를 설명해 놓은 HTML 페이지들 (JAVA 프로그램 사용할 때 여러가지 라이브러리를 사용하는데, 라이브러리의 종류가 뭐가 있고, 어떻게 사용하는지의 것들을 설명해 놓은 것)

- http://docs.oracle.com/javase/버전/docs/api/

=> 즐겨찾기에 추가해서 항상 볼 수 있도록 한다


1.4 자바 프로그램 개발 순서

1.4.1 소스 작성에서부터 실행까지

.java 소스 파일 작성  ->  컴파일러(javac.exe)로 바이트 코드 파일(.class) 생성  ->  JVM 구동 명령어(java.exe)로 기계어 생성 -> 실행

1.5 주석과 실행문

1.5.1 주석 사용하기

- 실행과 상관없는 코드의 설명

- // : //부터 라인 끝까지 주석으로 처리 (행 주석)

- /* ~ */ : 사이에 있는 모든 범위를 주석으로 처리 (범위 주석)


1.6 이클립스 설치

1.6.1 이클립스 소개

- 2003년도에 IBM에서 개발

- 자바 통합 개발 환경(IDE:Intergrated Development Environments) 제공

- 자바 소스 편집 가능 에디터

- 디버깅 기능 제공 (에러 찾기)

- 자동 코드 완성 기능

- Eclipase Foundation에서 버전업과 배포 중

- 다양한 개발 환경을 구축할 수 있도록 플러그인 설치 가능 (안드로이드, 스프링, C/C++ 개발 환경)

1.6.2 이클립스 다운로드

- 이클립스는 자바 언어로 개발된 툴, JDK 필요

- 다운로드 사이트 : http://www.eclipse.org

- Workspace : 생성한 프로젝트가 기본적으로 저장되는 디렉토리

- Perspective  : 유용하게 사용하는 뷰들을 묶어놓은 것

  


- 이클립스에서 저장을 누르면 자동으로 '.java' 파일을 '.class' 파일로 컴파일 해준다. bin 폴더에 저장된다.

'Java > 이것이 자바다' 카테고리의 다른 글

5장 참조 타입  (0) 2019.02.12