728x90
먼저 타입이 뭔지부터 짚고 넘어가야 합니다.
타입
타입은 한글로는 자료형이라 일컫습니다.
int num = 10;
String text = "Hello";
위와 같이 변수를 선언할 때 앞에 붙여 사용합니다.
정적언어(=정적타입)
정적언어는 타입, 즉 자료형을 컴파일 시에 결정하는 것 입니다.
프로그래밍 언어 중에는 C, C#, C++, Java 등이 있습니다.
이런 언어들은 변수에 들어갈 값이 어떤 값인지에 따라 자료형을 지정해주어야 합니다.
위 코드블록처럼 숫자면 int, float, double 등에 할당할 수 있겠죠.
만약 int 자료형인데 "001" 과 같은 문자열을 넣게 된다면 컴파일 시에 에러가 납니다.
장점 : 컴파일 시에 타입에 대한 정보를 결정하기 때문에 속도↑ , 타입 에러로 인한 문제점을 초기에 발견할 수 있어 타입의 안정성↑
정적언어의 장점으로는
1. 컴파일 시 타입 정보를 결정하므로 속도가 향상된다.
2. 타입 에러를 빠르게 알 수 있다 (안정성 up)
동적언어(=동적타입)
동적 언어는 컴파일이 아니라 실행 시에 자료형을 결정합니다.
대표적인 언어로 JavaScript, Python, Ruby, SmallTalk 등이 있습니다.
let num = 1;
var num2 = 333
num = '001' // 에러 없음
동적언어 장점으로는 런타임시까지 타입이 결정되지 않기 때문에 타입 선택에 있어 자유롭습니다.
다만 단점으로는 실행 도중에 타입 에러를 발생시킬 수 있습니다.
그래서 요즈음은 Javascript의 기능을 모두 갖고 있지만, type을 지정할 수 있는 TypeScript의 인기가 높아지고 있습니다.
728x90
'Development' 카테고리의 다른 글
마크다운 새 창으로 열기 (0) | 2022.08.10 |
---|
댓글