🔔[Born To Be Dev] Innovation Camp/WIL

2주차 8/8~8/13 WIL

디카페인라떼 2022. 8. 14. 23:17
  • 14주 프로그램 중에 2주차가 끝났다!  까마득하고 모르겠던 자바도 어느정도는 익숙해진 느낌이다. 아예 모르겠던 알고리즘도 가끔은 이렇게 하면 되지 않을까?! 하면서 감은 잡은 것 같은 느낌이 든다 ... (아직도 어렵지만)  멘토님들 말씀대로 자바 기초를 잡는데에 초점을 잡았다. 생소한 용어들을 완전히까지는 아니지만 어느정도는 낯설지는 않도록 자주보려고 노력했다
  • 1주차에는 프로젝트때문에 눈물로 지새웠다면 이번주차는 그래도 차근차근히 기본기를 다지자는 마음으로 임했다. 알고리즘 문제를 매일 잘 풀어내기만 하면 되었기에 공부할 시간이 어느정도는 있어서 다행이었다. 그래도 역시 알아야 할 내용은 산더미에 알고리즘이 그리 쉽게 풀리는 것도 아니어서 취침시간이 2,3시 였던건 함정이다...
  • 그래도 나는 매일 성장하고 있다!!!! 

  • 객체지향 프로그래밍이란?

자바를 알기 위해선 제일 먼저 알아야하는 OOP. 컴퓨터 프로그램을 명령어의 목록으로 보는 시각에서 벗어나 여러 개의 독립된 단위, 즉 "객체"들의 모임으로 파악하고자 하는 것 프로그램의 구성요소는 객체이며 이것들이 상호작용하도록 프로그래밍 하는 것.이라고 개념을 잡고있기는 하지만 하다보면 더 명확해 질 것이다. (클린코딩?)

 

2022.08.08 - [JAVA] - [JAVA] 객체지향 / 클래스 Class /메쏘드 Method / Static

 

  • JVM(JAVA Virtual Machine) : 자바를 실행하기 위란 가상의 기계

 OS에 종속받지 않고 CPU 가 Java를 인식, 실행할 수 있게 하는 가상 컴퓨터

Java 소스코드는 CPU가 인식을 하지 못하므로 기계어로 컴파일을 해줘야한다. 하지만 Java는 이 JVM 이라는 가상머신을 거쳐서 OS에 도달하기 때문에 OS가 인식할 수 있는 기계어로 바로 컴파일 되는게 아니라 JVM이 인식할 수 있는 Java bytecode(*.class)로 변환된다. 변환된 bytecode는 기계어가 아니기 때문에 OS에서 바로 실행되지 않는다.

이 때, JVM이 OS가 bytecode를 이해할 수 있도록 해석해준다. 따라서 Byte Code는 JVM 위에서 OS 상관없이 실행될 수 있는 것이다. OS에 종속적이지 않고, Java 파일 하나만 만들면 어느 디바이스든 JVM 위에서 실행할 수 있다.

참고 블로그 :https://doozi0316.tistory.com/entry/1%EC%A3%BC%EC%B0%A8-JVM%EC%9D%80-%EB%AC%B4%EC%97%87%EC%9D%B4%EB%A9%B0-%EC%9E%90%EB%B0%94-%EC%BD%94%EB%93%9C%EB%8A%94-%EC%96%B4%EB%96%BB%EA%B2%8C-%EC%8B%A4%ED%96%89%ED%95%98%EB%8A%94-%EA%B2%83%EC%9D%B8%EA%B0%80

 

=> 운영체제(윈도우, 맥, 리눅스...)의 제약을 받지않고 어느 운영체제던지 JAVA 파일 하나만 만들면 JVM위에서 실행 할 수 있다.