항해99_2~3주차, JAVA 객체지향프로그램 그의 친구 JVM

김빛찬·2022년 3월 20일
0

말그대로 거친 항해였다. 알고리즘 주차을 지나며 또 주특기 주차를 맞이하며, 마치 애니매이션 '원피스'의 코딩판을 찍은 듯한 경험이랄까...하루 12시간은 기본으로 14~15시간 이상 공부하는 인원들도 상당수이다. 물론 멘탈싸움이 너무나 크지만, 그만큼 프로그래밍이란 영역에 온전히 몰입하는 시간이라, 상당히 성장할 수 있는 기회라 생각한다. 여기서 중요한건 정말 강력한 '멘탈'이라 생각한다.
"과연 내가 할 수 있을까?", "너무 어렵고 막막한데..." 이런 생각이 매주 미션이 주어질 때마다 든다. 그러나 그럴 때마다 생각하는 것은 " 시간이 부족할지라도, 나의 페이스를 유지하며 급한 마음을 갖기보다. 항해99를 수료하는 날에는 '코딩이 편안한 사람'이 되어있을 것이다."라며 다짐한다.

이에 오늘도 마음을 정돈하며 배웠던 것을 간략하게나마 끄적여 보려한다.

@자바의 독립적 특성

자바의 객체지향적 특성과 JVM을 이해하기 위해서는 자바 운영체제의 독립적인 특징을 잠시 살펴봐야할 것이다.
자바는 운영체제나 하드웨어와 직접적으로 소통하지 않고 오직 JVM(Java Virtual Machine)과 통신하다. JVM은 자바 응용프로그램으로부터 전달받은 명령을 각 해당 운영체제가 이해할 수 있도록 변환하여 전달한다.
이런 jvm이란 이점으로 자바로 작성된 프로그램은 운영체제나 하드웨어에 관계없이 실행 가능하며 이것을 '한번 작성하면 어디서나 실행된다.( Write once, Run anywhere)'라고 표현하기도 한다.

@객체지향언어 JAVA

자바는 오래된 만큼이나 안정성과 신뢰도 높은 객체지향 프로그래밍언어이다. 객체지향의 특징인 상속, 캡슐화, 다형성이 잘 적용되어 있고 이런 특징으로 개발자가 유지보수하기 좋은 언어이다.

@JVM(Java Virtual Machine)

Java class는 compile(편집)하면 java application이 생성된다. 이 컴파일된 application이 jvm 안에서 실행된다. 이때 jvm이 applicaion을 해당 운영체제가 알아들을 수 있게 번역해주는 것이다.
즉 java를 실행하기 위한 '가상 번역 컴퓨터'인 것이다.

특히나 java를 실하기 위한 jvm은 운용체제에 종속적이어서 운용체제에 맞는 jvm이 있다.

위 내용과 그림은 아래 링크를 참조하였습니다.
https://loosie.tistory.com/470

profile
비전공의 시작, 개발 STEP UP

0개의 댓글