프로그래밍 언어
프로그래밍 언어는 컴퓨터에 어떤 작업을 수행하도록 명령하는 형식어입니다. 예를 들어, 파이썬, 자바, C++, 자바스크립트 등이 프로그래밍 언어에 포함됩니다. 프로그래밍 언어의 특징은 다음과 같습니다. 가독성, 프로그래밍 언어는 컴퓨터와 개발자 사이의 언어이기 때문에 가독성이 높아야 합니다. 유연성, 프로그래밍 언어는 다양한 종류의 작업을 수행할 수 있어야 합니다. 사용성, 프로그래밍 언어는 개발자가 쉽게 사용할 수 있어야 합니다. 프로그래밍 언어의 역사는 1950년대에서 시작되었으며, 처음에는 기계어를 사용하였습니다. 그 후, 고수준 언어가 등장하여 현재는 많은 언어가 존재하고 있습니다.
컴파일러 언어 vs 인터프리터 언어
인간의 언어로 작성된 프로그래밍 언어를 컴퓨터가 이해하고 처리하려면 0과 1로 이루어진 이진수로 변환해주어야 합니다. 그러기 위해서 인간(프로그래머)이 프로그래밍 언어로 작성한 내용을 컴퓨터가 이해할 수 있는 기계어(이진수)로 번역해 줄 번역기가 필요합니다. 컴파일러(Compiler)와 인터프리터(Interpreter)는 둘 다 프로그래밍 언어를 기계어로 변환해 주지만 방식에 차이가 있습니다.
컴파일러 언어
정의
컴파일러 언어는 프로그래밍 언어로서, 코드가 컴파일되어 기계어로 번역된 후 실행됩니다. 기계어로 번역된 파일은 실행 파일로 저장될 수 있어서, 컴파일러 없이도 실행이 가능합니다.
종류
대표적으로 Java, C, C++, C# 등이 있습니다.
특징
- 컴파일이 필요합니다. 코드를 작성한 후, 컴파일러를 사용하여 기계어로 번역해야 합니다.
- 컴파일 후에 생성된 실행 파일은 다른 컴퓨터에서도 실행 가능합니다.
- 실행 속도가 빠릅니다. 컴파일된 기계어는 직접 실행되기 때문에, 속도가 빠릅니다.
- 정적 타입 체크가 가능합니다. 컴파일 과정에서 변수의 타입이 올바르게 지정되었는지 확인이 가능하기 때문입니다.
인터프리터 언어
정의
인터프리터 언어는 프로그래밍 언어로서, 코드를 한 줄씩 읽어서 즉시 실행합니다. 컴파일 과정이 필요 없어서, 작성된 코드를 바로 실행할 수 있습니다.
종류
대표적으로 Python, Javascript, Ruby 등이 있습니다.
특징
- 컴파일이 필요 없습니다. 코드를 작성하면 바로 실행할 수 있습니다.
- 컴파일 후에 생성된 실행 파일이 없습니다.
- 실행 속도가 느립니다. 코드를 한 줄씩 읽어서 실행하기 때문입니다.
- 동적 타입 체크가 가능합니다. 변수의 타입을 지정하지 않고, 실행 과정에서 타입이 결정되기 때문입니다.
Reference
Open AI Chat GPT
'PROGRAMMING > CS' 카테고리의 다른 글
[CS] 블로킹과 논블로킹 그리고 동기와 비동기 (feat.Javascript) (36) | 2023.03.21 |
---|---|
[CS] 함수형 프로그래밍의 특징(feat.Javascript) (36) | 2023.03.13 |
[CS] Argument와 Parameter의 차이 쉽게 이해하기 (feat. 인수 / 인자 / 매개변수 용어 정리) (36) | 2023.03.09 |
URL과 URI의 차이 그리고 URN까지 쉽게 이해하기 (50) | 2023.02.23 |
REST API와 GraphQL, 정의 | 비교 | 장점 | 단점 | 규칙 | 예시코드 | 설치 | 고려할점 (feat.Server API, Node.js) (36) | 2023.02.19 |