PracticeEveryday

런타임 vs 컴파일 본문

정리/Question

런타임 vs 컴파일

kimddakki 2022. 5. 2. 17:27

런타임(Runtime)과 컴파일타임(Compiletime)은 소프트웨어 프로그램 개발의 서로 다른 두 계층의 차이를 설명하기 위한 용어이다.

 

1. 프로그램을 생성하기 위해 개발자는 소스코드를 작성

2. 작성한 파일을 컴파일하는 과정을 통해 기계어 코드로 변환되어 실행 가능한 프로그램이 되며 이러한 편집 과정을 컴파일 타임이라고 한다.

 

"런타임"과 "컴파일 타임"이라는 용어는 종종 서로 다른 두 가지 타입의 에러를 나타내기 위해 사용되어 진다.

 

컴파일 타임 에러는 프로그램이 성공적으로 컴파일링되는 것을 방해하는 신택스에러(Syntax error)나 파일참조 오류와 같은 문제를 말하며, 이런 경우 컴파일러는 컴파일 타임 에러를 발생시키고 일반적으로 문제를 일으킨 소스코드 라인을 지시해준다.

만약, 어떤 소스코드가 이미 실행가능한 프로그램으로 컴파일 되었다 할지라도 이것은 여전히 프로그램의 실행중에 버그를 일으킬 수 있다. 예를 들자면, 예상치 못한 오류 또는 충돌로 동작하지 않을 수 있는데 이렇게 프로그램이 실행중에 발생하는 형태의 오류를 런타임오류 라고 한다.

 

런타임 (Run time) 

런타임이란 컴파일 과정 마친 응용 프로그램이 사용자에 의해서 실행되어 지는 때(Time)을 의미합니다.

컴파일 타임 (Compile time)

컴파일이란?

컴파일이란 어떤 언어의 코드를 다른 언어로 바꿔주는 과정. 대표적인 예는 C++ 코드를 기계어로 바꿔주는 것이다.

사전적 의미는 (여러 출처에서 자료를 따와) 엮다, 편집하다는 뜻으로소스코드와 기타 라이브러리 등을 하나로 엮어서 결과물을 만들어 낸다고 이해하면 될 듯.

 

 

컴파일타임 이라는 것은 이렇게 프로그램을 위한 소스코드를 작성하고 이를 컴파일 하여 기계어코드로 변환하는 일련의 과정을 의미한다. 즉, 컴파일이 진행되는 과정 을 컴파일타임이라고한다.

 

 

런타임이란 소스코드 다 짜고 응용 프로그램으로 만들어서 실행하고 있단 단계

// 실제 실행 가능한 프로그램이 실행되는 타임!

프로그램 만들고 실행! 롤 실행 Browser 실행 Nodejs 실행

 

컴파일 타임이란 소스 코드를 짜고 컴파일하여 컴퓨터 기계어로 바꾸어주는 과정 => 컴파일이 진행되는 과정

Compile : 엮다 편집하다 => 실제로 배포할 프로그램을 만들어가는 과정

'정리 > Question' 카테고리의 다른 글

Joi  (0) 2022.05.13
자료구조? 알고리즘? 추상 자료형?  (0) 2022.05.09
Call by value vs Call by reference  (0) 2022.05.04
prototype vs __proto__  (0) 2022.05.04
--dev, --save, --save-dev?  (0) 2022.05.01
Comments