코딩

컴파일러 방식의 언어와 인터프리터 방식의 언어

secondnature 2024. 7. 1. 23:29

프로그래밍 언어는 반드시 기계어로 번역해야만 기계에서 실행할 수 있다. 번역하는 방식에 따라 컴파일러 방식의 언어와 인터프리터 방식의 언어로 구분된다. 

 

컴파일러 방식의 언어는 외국어로 된 원서를 오랜 시간에 걸쳐 처음부터 끝까지 번역한 후에 출판하는 번역서에 비유할 수 있다. 책 한 권을 모두 번역해야 하므로 작업이 꽤 오래 걸리지만 한 번만 완벽하게 번역해놓으면 더 이상 번역 작업이 필요 없다. 컴파일러 방식의 프로그래밍 언어는 처음부터 끝까지 코딩을 모두 마친 후에 번역 작업을 거쳐서 프로그램을 실행하게 된다. 만일 수백만 줄의 코딩 중에서 단 한 줄의 오류라도 있으면 이 프로그램은 제대로 번역되지 않는다.

 

반면 인터프리터 방식의 언어는 실시간으로 나오는 영어 뉴스를 우리말로 한 문장 한 문장씩 동시에 통역해주는 동시통역에 비유할 수 있다. 인터프리터 방식의 언어는 컴파일러 방식의 언어처럼 전체를 미리 번역하는 과정이 필요하지 않다.

프로그램을 실행해가며 실시간으로 번역하는 방식이라서 코딩이 완벽하지 않더라도 오류를 만나기 전까지는 프로그램 실행이 가능하다. 하지만 그때그때 번역을 해야 하므로 미리 번역해놓은 기계어를 실행만 하는 컴파일러 방식에 비해 상대적으로 느리게 동작한다.

'코딩' 카테고리의 다른 글

세션  (0) 2025.02.01
쿠키  (1) 2025.01.30
[트러블 슈팅] java.sql.SQLSyntaxErrorException  (0) 2025.01.30
병렬 처리와 병행 처리  (0) 2024.07.05
소프트웨어 개발의 단계  (0) 2024.07.02