ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 인터프리터 언어, 컴파일 언어
    TypeScript 2023. 5. 29. 19:54

     


     

    인터프리터 언어와 컴파일 언어는 실행방식에 관련된 개념

    동적 언어와 정적 언어는 변수의 타입 시스템과 관련된 개념

     

    1.인터프리터 언어

    소스코드를 한 줄씩 읽고 해석하여 동시에 실행하는 프로그래밍 언어이다.

    소스코드는 인터프리터에 의해 바로 실행되며, 별도의 컴파일 단계가 없다. 

    Python,JavaScript,Ruby,PHP 등

     

    특징

    😇컴파일 과정이 없으므로 간단하고 빠른 개발과 디버깅이 가능하다. 

    💀소스 코드가 직접 실행되기 때문에 코드의 보안이 취약할 수 있다.

    💀한 줄씩 해석하고 실행하므로 컴파일 언어에 비해 실행 속도가 느릴 수 있다.

     

    동적 타입 언어의 특징

    • 변수의 타입이 런타임에 결정된다.
    • 변수를 선언할 때 타입을 명시적으로 선언하지 않고 할당되는 값에 따라 동적으로 타입이 결정된다.
    • 변수의 타입을 자유롭게 변경할 수 있으며 다양한 유형의 값을 저장할 수 있다.

     

    

     

    2.컴파일 언어

    소스코드를 기계어로 변환하는 과정을 거친 후 실행하는 프로그래밍 언어이다.

    컴파일러를 통해 컴파일 타임에 전체 소스코드를 분석하고, 기계어로 번역하여 실행파일을 생성한다.

    C,C#,C++,JAVA 등

     

    특징

    😇타입의 안정성 : 정적 타입을 가지고 있어 변수의 타입을 명시적으로 선언할 수 있다. 

    😇빠른 실행 : 컴파일과 실행 단계가 분리되어 있기 때문에 실행시에는 실행만 하면 되므로 코드의 실행 속도가 빠르다.

    💀개발 및 디버깅 시간: 소스코드 작성후 컴파일 과정을 거쳐야 하므로 개발과 디버깅에 시간이 걸린다.

     

    정적 언어 타입의 특징

    • 변수의 타입이 컴파일 과정에 결정된다.
    • 변수의 타입을 명시적으로 선언해야한다.
    • 컴파일러는 변수의 타입을 검사하고 오류를 포착하여 개발초기 안정성을 높인다.

     

     

    'TypeScript' 카테고리의 다른 글

    [TS기초]객체 타입  (0) 2023.06.15
    [TS기초]기본 타입  (0) 2023.06.13
    대수 타입  (0) 2023.06.11
    [Generic]제네릭 함수  (0) 2023.06.06
    Type Casting(타입 형변환)  (0) 2023.06.05
Designed by Tistory.