본문 바로가기
프로그래밍 기본 개념

런타임(Runtime), 컴파일(Compile)

by 뿌비 2024. 7. 31.
728x90
순서 : compile -> runtime

🔥 컴파일(Compile)

  • 개발자가 작성한 코드를 기계가 이해할 수 있는 언어(기계어)로 바꾸어 주는 과정을 말한다
  • Java, C, C++ 같은 언어들이 컴파일 언어이며 실행(런타임)되기 위해서는 반드시 컴파일 과정을 거쳐야 한다

🔥 런타임(Runtime) 

  • 프로그램을 run 시킨다고 생각하면 쉽다. 말 그대로 사용자가 컴파일된 프로그램을 실행시키는 시간이다

🔥 런타임 환경(Runtime environment)

  • 컴퓨터가 실행되는 동안 프로세스나 프로그램을 위한 소프트웨어 서비스를 제공하는 가상 머신의 상태이다. 쉽게 말하면 런타임 환경은 프로그래밍 언어가 구동되는 환경이다
  • 예시) JAVA의 런타임 환경은 JRE(JAVA RUNTIME ENVIRONMENT)이다. JAVA가 실행될 수 있도록 서비스를 제공해 준다
  • 자바스크립트가 브라우저에서 실행된다면 자바스크립트의 런타임 환경은 브라우저일 것이고, Node.js에서 실행된다면 런타임 환경은 Node.js이다 

🔥 컴파일 에러 

  • 소스코드가 컴파일되는 과정 중에 발생하는 Syntax error, 파일 참조 오류 등과 같은 문제들로 인해 컴파일이 방해되어 발생하는 오류들을 의미한다
  • 컴파일러가 이해하지 못하는 코드를 발견할 때 발생하는 에러이며 현재 문제가 되는 소스 코드를 알려준다

🔥 런타임 에러 

  • 이미 컴파일이 완료되어 프로그램이 실행 중임에도 불구하고, 의도치 않은 예외 상황으로 인하여 프로그램 실행 중에 발생하는 오류이다
  • 런타임 에러는 컴파일 중에는 감지하지 못하는 에러이다
  • 프로그램 작성 시 설계 미숙으로 인해 에러가 나는 경우이다

에러 종류

런타임 에러 컴파일 에러
0 나누기 error Syntax error
 널(NULL) 참조 error Type check error
메모리 부족 error  
728x90

'프로그래밍 기본 개념' 카테고리의 다른 글

빌드(Build), 배포(Deploy)  (0) 2024.07.31
바이너리(Binary)란?  (0) 2024.07.31
HTTP와 HTTPS의 차이점  (0) 2024.07.13
도메인과 URL 차이점  (0) 2024.07.13
www 약자  (0) 2024.07.13