세상을 더 편리하게
728x90
런타임 도중에 실행되며....
컴파일될 때에 실행된다...
빌드시 실행되며...

뭐라카노.. 셋이 비슷한거 아닝교?

난 셋이 비슷한 줄 알았다. 하지만 프로그래머라면 구분해야겠다는 생각을 아주아주 오래전에 했지... 아니 했어야만했다.

이제라도 알아보자

우선 각자 알아보자

컴파일 Compile

컴퓨터가 소스 코드를 읽기 위해 코드를 기계어로 번역하는 과정
파일이 여러개라면 여러개의 Object 파일로 만든다.

오케이 우선 기계어로 바꾼다 Okay

그럼 컴파일에서 일어날 수 있는 에러는?? -> 기계어로 바꾸지 못하는 경우겠군!

  • 타입체크 오류
  • 신텍스(문법) 오류

등이 있을 수 있겠다.

링킹 Linking & 런타임 Runtime

링킹은 컴파일을 통해 만들어진 Object 파일들과 런타임 환경에서 제공하는 런타임 라이브러리를 연결하는  것

런타임 환경? 런타임? 이게 뭐지

우선 런 타임 Runtime 말 그대로 프로그램 실행 중의 동작이라는 말이다. 
더 자세하게는 필요한 시스템 자원을 이용해서 어떤 처리를 하고 있는 것

런타임을 가장 흔하게 마주치는 것은 런타임 에러이다. 실행중에 마주칠 수 있는 에러

  • NPE ( Null Point Exception ) 에러
  • 0 Division 에러 
  • 메모리 부족 에러

기계어 번역에는 문제 없지만 사실상 합쳐놓고 실행 중에 문제가 일어날 수 있는 문제들이다.

그럼 런타임 환경은 뭐지??

런타임 환경은 런타임을 하기 위해서 시스템에 자원에 접근 할 수 있는 실행 환경이다!

빌드

링킹을 통해 합쳐진 파일을 실행 가능한 파일로 만드는 것

그렇다. 컴파일과 링킹은 빌드하는 과정 중 하나인 것이다.

 

 

728x90

'Programming' 카테고리의 다른 글

[Programming] 21MOBIS 후기  (0) 2021.08.28
profile

세상을 더 편리하게

@쵱니

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!