본문 바로가기
Portpolio/java_algo_interview

자바 알고리즘 인터뷰 02. 자바

by Peter Choi 2023. 12. 18.
반응형

자바는 가장 많이 사용되는 프로그램 언어이기도 하다. 

 

저자는 자바의 범용성과 우수성을 분리하는 시야를 보여주는데, 마치 영어가 언어학적으로 가장 우수해서 영어를 많이 쓰는 것이 아닌 것처럼 자바 역시 마찬가지라고 주장한다.

 

특히 백엔드 분야에서는 거의 절대다수를 차지하는데 국내에서는 전자정부 프레임워크 구축 과정에서 스프링이라는 자바의 프레임워크를 표준으로 삼았기 때문에 그 입지가 굳혀진 것이 있을 것이다.

 

그래서 백엔드를 준비하는 개발자들은 자바로 코딩테스트를 준비하는 것이 그리 이상하지 않다. 물론 자바가 C++에 비해서 느리다는 특징이 있긴 하지만 기업에서도 코테를 진행할 때 그러한 부분을 감안해서 시간 조정을 하기도 한다. 

 

2장에서 가장 중요한 내용을 뽑아보자면 JVM과 바이트코드라는 요소이다.

 

0. 자바는 어떻게 실행되는가?

같은 객체지향 언어인 C++이 OS마다 실행 파일이 모두 다른 것에 비해 자바는 바이트코드라는 특수한 형식을 기점으로 OS에 상관없이 동일한 바이트코드를 각자 다른 JRE로 실행시키는 과정만 필요하니 훨씬 범용성의 측면에서 우수하다. 바이트코드는 단순하게 응용 개발 단계에서는 그리 중요하지 않을지도 몰라도 심화 단계에서는 읽을 줄 아는 것이 더 나은 개발을 위한 방법이라고 한다.

자바의 빌드 과정

 

1. JVM이란 JRE와 기타 툴들의 복합체

JVM의 구조
java 8 docs 구조

 

반응형

댓글