티스토리 뷰

학습목표 :

1. 자바가 무엇인지

2. 자바가 어디에 쓰이는지
3. 자바의 역사
4. 자바의 특징

1. 자바(Java)란?

 

1) 프로그래밍 언어

- 객체지향 프로그래밍 언어

- 자바는 컴퓨터 프로그래밍 언어이므로 컴퓨터 프로그램(애플리케이션)을 만드는데 사용

 

2) 단순히 프로그래밍 언어가 아니라

실행환경(JRE) + 개발도구(JDK) + 자바 클래스 라이브러리(Java API)를 제공

 

* 라이브러리란? 

프로그램을 개발하는데 필요한 기능들을 미리 만들어 놓은것을 말한다.

프로그램을 만드는데 자주 쓰일만한 것들을 남들이 미리 만들어 놓은것을 제공함

-> 자바는 풍부한 클래스 라이브러리(Java API)를 통해 프로그래밍에 필요한 요소들을 기본적으로 제공하기 때문에 자바에서 제공하는 라이브러리를 잘 활용하면 쉽고 빠르게 애플리케이션 개발 가능 

 

2. 자바가 어디에 쓰이는지(자바로 어떤 프로그램을 만들 수 있는지)

 

1) PC애플리케이션 : 노트북이나 데스크탑에서 돌아가는 프로그램을 만들 수 있다.

ex) IntelliJ, eclipse 자바로 만들어짐

이클립스는 우리가 자바프로그램을 만드는 데 사용할 도구이다.

 

2) 웹 애플리케이션 : 웹사이트

ex) springframework 자바로 만들어짐

자바를 배우면 웹사이트를 만들 수 있다.

 

3) 모바일 애플리케이션

ex) (안드로이드(스마트폰 운영체계)) 자바로 만들어짐

여기서 돌아가는 프로그램을 만들 때, 자바로 만들 수 있다.

자바로 만든 프로그램을 스마트폰에 넣어서 가지고 다니면서 사용할 수 있다.

 

4) 빅데이터

빅데이터에서도 자바가 사용되고 있다.

ex) hadoop 자바로 만들어짐

빅데이터의 가장 기본 플랫폼인 하둡이 자바로 되어있으니까 빅데이터쪽에서도 자바가 많이 쓰이고 있다.

 

5) 게임, 과학분야, 소형기기 등

ex) 마인크래프트 자바로 만들어짐

원래는 자바가 소형기기에 사용될려고 만들어진 것이다.

 

위와 같이 굉장히 많은 분야에서 사용되고 있다.

 

* 왜 자바인가?

전 세계적으로 프로그래밍 언어가 약 700개 정도 된다고 한다.

지금도 계속 새로운 언어들이 만들어지고 있다.

그 중에서 왜 꼭 자바를 배워야 할까?

(1) 다양한 분야에서 활발히 사용

(2) 20년동안 프로그래밍 언어 상위

https://www.tiobe.com/tiobe-index/

 
TIOBE Index - TIOBE

Home » TIOBE Index TIOBE Index for September 2022 September Headline: Julia is getting close to the TIOBE index top 20 The Julia programming language is only 0.05% away from a top 20 position. Julia is designed for numerical analysis and computational sci

www.tiobe.com
자바를 배우면 프로그래밍을 배우는 것만 아니라, 일반적인 컴퓨터 관련 지식들을 배우기에 좋다.

 

(3) 배우기 쉽고, 풍부한 학습자료

자바를 학습하는데 필요한 자료가 20년동안 쌓여서 풍부하다.

객체지향 개념을 배우기에는 자바가 제일 좋다.

타입이 있는 언어를 배우는 것이 프로그래밍하는데 도움이 된다.

 

(4) 모던 프로그래밍 언어(객체지향+함수형)

자바가 원래 객체지향언어였다.

그런데 빅데이터가 나오면서 함수형이 뜨기 시작했다.

자바 1.8부터, 자바8부터 자바가 함수형 기능을 추가했다.

언어들은 객체지향 언어라도 최근 추세에 따라서 살아남을려고 계속 변화를 한다.

자바가 멈춰있지 않고 꾸준히 자바의 성능을 개선하여 새로운 버전을 발표하고 있다.

최근에 나온 언어들 못지 않게 최근 프로그래밍 기능들을 자바가 지원한다.

ex) 모바일(J2ME), 대규모 기업환경(J2EE), XML 등의 다양한 최신 기술을 지원함으로써 그 활동영역을 넓혀 가고 있다.

 

3. 자바의 역사

- 자바는 썬 마이크로시스템즈(Sun Microsystems, Inc. 이하 썬)에서 개발하여 1996년 1월에 공식적으로 발표한 객체지향 프로그래밍 언어

- 1991년에 썬의 엔지니어들에 의해서 고안된 오크(Oak)라는 언어에서부터 시작되었다.

- 2010년에 썬이 오라클(oracle)사에 인수되면서 이제 자바는 오라클사의 제품

 

* JDK  : 자바개발도구

 

- JDK   1.0      (1996.01.23)

- JDK   1.1      (1996.02.19)

- J2SE 1.2      (1998.12.08)

* Java2

(1) J2SE(Java2 Standard Edition)

가장 일반적인 자바버전

(2) J2ME(Java2 Micro Edition)

모바일, 소형기기에 사용되기 위한 자바버전

(3) J2EE(Java2 Enterprise Edition)

큰 기업에서 사용하기 위한 자바버전 

 

- J2SE 1.3      (2000.05.08)

- J2SE 1.4      (2002.02.06)

- J2SE 5.0      (2004.09.30)

* J2SE 1.5라고 부름 * 큰 변화 있음, 중요한 기능들을 많이 추가

- Java  SE 6   (2006.12.11)

- Java  SE 7   (2011.07.28)

- Java  SE 8   (2014.03.18)

* (J2SE 1.2 , J2SE 5.0 , Java  SE 8)3번째 버전마다 큰 변화 있음, 중요한 기능들을 많이 추가

* 자바의 정석 기초편은 8버전에 맞춰져있음

- Java  SE 9   (2017.09.21)

- Java  SE 10 (2018.03.20)

- Java  SE 11 (2018.09.25)

- Java  SE 12 (2019.03.19)

- Java  SE 13 (2019.09.17)

* Java SE 9~13까지 6개월 마다 버전 발표를 함

* Why?

자바가 그동안 안정성 때문에 새로운 기능들을 추가하는 것을 신중하게 검토함

자바가 그만큼 많이 쓰이기 때문에 

안정성도 중요하지만 최신 기능들을 반영하기 위해서 다른 언어들도 빠르게 변화하고 있기 때문에 뒤쳐지지 않도록 6개월 마다 버전 발표를 함

크게 핵심적인 내용들이 변화하고 있지는 않다.

Java 8을 기준으로 공부해도 전혀문제가 없다.

실무에서는 안정성때문에 Java 8이 제일 많이 쓰이고 그 이하 버전도 쓴다.

최신 기능들은 Java 8의 핵심적인 기능 배우고나서 새로 추가된 내용만 배우면된다.

 

Java 8이 많이 쓰이기때문에 이걸로 ㄱㄱ