본문 바로가기
Java/Java Basics

자바(Java) 공부 전 알아두면 좋을 것

by ITmin 2021. 12. 31.

https://www.youtube.com/watch?v=f0cAmTYo4tQ 

자바를 공부하기 전에 알아두면 좋을 것들!! #1 (JDK, JRE, JVM 알아보기) - 공부하는 개발자

<다음 글은 위 유튜브 영상을 보고 작성한 글입니다.>

 

🧸 자바를 공부하기 전에 알아두면 좋을 것들

 

컴파일 : 인간이 이해하기 쉬운 언어를 기계어로 번역하는 과정

컴파일러 : 컴파일을 하는 프로그램

바이트 코드(=바이너리코드) : 0과 1로 이루어진 코드, 컴퓨터가 이해가능. But! 0과 1의 조합은 운영체제마다 다름

JVM : 0과 1과 운영체제 사이에서 둘을 호환시켜주는 역할 (JAVA 설치시 같이 설치됨)

원래 OS 마다 다른 ‘컴파일러’가 필요하지만 JAVA는 JVM이 0과 1을 OS에 맞게 번역해 준다. JVM은 인기가 상당해서 JAVA 외에 다른 언어에서도 사용하고 있다.

 

“아 JVM”은 똑같은 JAVA 바이트 코드를 OS마다 다르게 해석해주는 친구구나~” 라고 생각할 수 있음

JVM < JRE < JDK 순서로 포함관계이다.

JDK를 설치하면 JRE와 JVM도 함께 설치된다.

따라서 JAVA의 버전 = JDK의 버전이 된다.

JDK에는 버전이 있고, 각 버전별로 새로운 기능이 추가되거나 기존 기능이 사라진다.

JDK에는 종류가 있고, 기능 자체는 모두 동일하나 성능과 비용에 약간의 차이가 있을 수 있다.


빌드와 실행

 

빌드(Build) : 소스 코드 파일을 컴퓨터에서 실행할 수 있는 독립 SW 가공물로 변환시키는 과정

  • 독립 SW 가공물 = Artifact
빌드를 세분화 하면..
1) 소스 코드를 컴파일 한다.
2) 테스트 코드를 컴파일 한다.
3) 테스트 코드를 실행한다.
4) 데스트 코드 리포트를 작성한다.
5) 기타 추가 설정한 작업들을 진행한다.
6) 패키징을 수행한다. 
7) 최종 SW 결과물(Artifact)을 만들어 낸다. 

 

실행(Run) : 내가 작성한 코드 (혹은 테스트 코드)를 컴파일을 거쳐, 작동시켜 보는 것

독립 SW 가공물이 나올 수도 있고, 나오지 않을 수도 있다.

📌 주의 : 인터프리터 언어는 컴파일이 필요 없다.

인터프리터 언어 : 자바스크립트나 파이썬처럼 컴파일 없이 인터트리터가 한줄씩 읽어 실행시켜주는 언어

빌드 툴(Build tool) : 소스코드의 빌드 과정을 자동으로 처리 해주는 프로그램, 외부 소스 코드 (외부 라이브러리) 자동 추가, 관리

 

자바 빌드 툴 딱 세 가지

 

Ant 한 줄 요약) 사용 x

Maven 한 줄 요약) Ant 단점 대부분 극복, 지금도 쓰는 경우가 있으나 신규 PJ에는 지양하는 편

Gradle 한 줄 요약) 가장 최신에 나온 JAVA 빌트 툴, 특히 신규 PJ에 많이 사용되고 있다.

빌드란 단순히 실행하는 것과 다르다.

빌드 과정 자동화외부 라이브러리 관리를 위해 빌드 툴이 사용된다.

널리 쓰였던(쓰이는) JAVA 빌드 툴에는 ant/maven/gradle 3가지가 있다.

현재는 주로 maven/gradle 2가지가 많이 쓰인다.

 

 

댓글