동적타이핑은 코드를 작성하는데 있어서 컴퓨터적 구조를 생략한다.
따라서 변수를 지정할 때 해당 변수의 데이터 타입 등을 명시하지 않아도 컴퓨터가 알아서 해석하도록 한다.
예컨대 Python에서 a = 15
라는 식으로 변수를 지정할 때 a
가 숫자라고 명시 하지 않더라도 컴퓨터는 이를 스스로 숫자라 해석한다.
이러한 방식은 코드를 보다 간결하게 해주며 코드의 로직을 보다 명확히 보여줄 수 있지만,
데이터 타입이 뭔지 파악하는 것을 컴퓨터에게 맡기기 때문에 그 만큼 실행속도가 느려진다는 단점이 있다.
ex) Python, Ruby, php ...
정적타이핑은 동적타이핑과 정반대로 코드를 작성할 때 컴퓨터적 구조를 명시해준다.
즉, int a = 15 라는 식으로 변수의 데이터 타입을 직접 명시하며 컴퓨터가 해야할 일을 덜어주는 것이다.
이는 코드를 작성하는데 관련된 작은 정보들까지 개발자가 직접 신경쓰도록 하는데, 이렇게 되면 코드의 안정성과 정교함이 커진다.
하지만, 코드 구조 자체는 눈에 잘 들어올지라도 코드가 매우 길고 복잡해져서 처음 프로그래밍에 입문하기에 추천되지는 않는다.
ex) C, C++, JAVA ...
int var = 10;
float pi = 3.14;
char str = 'a';