본문 바로가기

프로그래밍/프로그래밍 기본지식

Dynamic typing과 Static typing

변수 선언을 할 때 자료형을 적느냐 아니냐에 따라서 Dynamic typing언어와 Static typing언어로 구분 할 수 있다. 일종의 프로그래밍 패러다임으로 볼 수 도 있는 분류화다.

 

Dynamic typing과 Static typing의 장단점

Dynamic typing                                                            Static typing

코딩 속도가 빠르다. 코딩 속도가 느리다.
실행 속도가 느리다. 실행 속도가 빠르다.
코드의 내용이 눈에 잘 들어온다. 코드의 구조가 눈에 잘 들어온다.
배우기 쉽다. 배우기 어렵다.
혼자서 빠르게 하는, 작고 단순한 프로젝트에 적합 여러 사람이 협업하는, 크고 복잡한 프로젝트에 적합

총 정리

 

Dynamic typing 언어는 간편함과 편리함을 추구하며, 컴퓨터적 구조를 생략하기 때문에 코드의 내용(로직)이 눈에 잘 들어오고 사람이 코드를 이해하기 편해서 학습하기가 쉽습니다. 다만 컴퓨터적 구조를 생략하기 때문에 실행 속도에 민감한 곳이나 성능이 좋지 않은 환경에서는 활약하기 힘듭니다.

 

Static typing 언어는 안정성과 정교함을 추구하며, 컴퓨터적 구조를 코드에 적어주기 때문에 코드의 구조가 눈에 잘 들어오지만 코드가 복잡해져서 배우기 어렵습니다. 다만 코드의 컴퓨터적 구조 덕분에 컴퓨터가 고민을 덜 하게 되고, 실행 속도가 중요한 곳에서 활약할 수 있습니다. 이런 특징을 살려 Static typing 언어는 임베디드, 실시간 투자, 인공 지능 분야에서 활약하고 있습니다.

 

 

 

참조

https://www.codeit.kr/learn/courses/intro-to-computer/2554

 

코딩이 처음이라면, 코드잇

월 3만원대로 Python, JavaScript, HTML/CSS, Java 등 1,600개 이상 프로그래밍 강의를 무제한 수강하세요

www.codeit.kr:443