정적 타입 언어 vs 동적 타입 언어

sunny·2021년 11월 5일
0

정적 타입 언어

컴파일 시 변수의 타입(자료형)이 결정되는 언어
즉, 사용자가 직접 변수의 타입을 명시해줘야 한다.

👉정적 타입 언어: Java, C, C++, C#, Scala, Fortran, Haskell, ML, Pascal

정적 타입 언어의 장/단점

장점

  • 타입 관련한 런타임 오류 방지, 안정성
  • 코드의 가독성
  • 컴파일 시에 타입에 대한 정보를 결정하기 때문에 빠른 속도

단점

  • 매번 변수형을 결정해줘야 하는 번거로움

동적 타입 언어

컴파일 시 자료형을 정하는 것이 아닌 런타임 시 결정
즉, 사용자는 타입 없이 변수만 선언하여 값을 지정할 수 있다.

👉동적 타입 언어: Groovy, Python, JavaScript, Ruby, Smalltalk, Lisp, Objective-C, PHP, Prolog

동적 타입 언어의 장/단점

장점

  • 짧은 코드
  • 낮은 Learning-Curve
  • 빠르게 코드 작성 가능
  • 높은 유연성

단점

  • 타입 에러 발생 가능
    이때, 코드가 길고 복잡해질 경우 에러 찾기 어려움 👉 TypeScript나 FLow 등을 사용하여 불편함 해소

0개의 댓글