TS #1 :: Typescript는 뭔가요?

해다·2022년 3월 24일
0

JavaScript & TypeScript

목록 보기
8/10
post-thumbnail

🙊 잘못 기재한 부분이 있다면 댓글로 남겨주세요!


🤔 자바스크립트는 알겠는데 타입스크립트는 뭔가요?

타입스크립트를 주제로 글을 안 쓰려고 했던 이유 중 하나로, 많이 들어본 말이지만 전혀 와닿지 않는 개념이었기 때문이다. 다른 블로그 글을 참조하기 전에 가장 먼저 위키백과에 등재되어 있는 정이를 살펴봤다.

" 타입스크립트(TypeScript)는 자바스크립트의 슈퍼셋인 오픈소스 프로그래밍 언어이다. 마이크로소프트에서 개발, 유지하고 있으며 엄격한 문법을 지원한다. "

자바스크립트의 슈퍼셋인 프로그래밍 언어구나!
근데 슈퍼셋이 뭔지 몰라서 찾아봤다. 이 단어도 위키백과에서 찾아봤더니 subset이라는 단어로 연결이 되었고 찾아보니 부분 집합이라는 뜻이다. IT 용어사전에는 자바스크립트의 상위 언어라고 적혀있다.

그러면 어쨌든 자바스크립트랑 어느 정도 공유하는 부분이 일치하는 프로그래밍 언어를 말하는 건가?
그래서 더 찾아보니 마이크로소프트가 개발하고... 프론트엔드 단에서도, 백엔드 단에서도 동시에 쓸 수 있는 언어이며 AngularJS 프레임워크에서 사용된 컴퓨터 언어이고...어쨌든 인기가 엄청 많은가보다.

자바스크립트도 널리 쓰이는데, 굳이 타임스크립트를 쓰는 이유는 뭘까?

👾타입스크립트의 특징

  • 자바스크립트의 슈퍼셋
    위에서 한 말이지만, 자바스크립트를 기반으로 만들어진 언어이기 때문에 자바스크립트의 기본 문법이 베이스로 깔려있다. 거기에 타임스크립트만의 문법을 추가한 것이 타임스크립트의 매력인 것 같다. 이 특징으로 인해 자바스크립트로 작성한 유효한 코드는 확장자를 .js에서 .ts로 컴파일해 변환할 수 있다고 한다.

  • 정적인 컴파일 언어
    자바스크립트는 동적인 언어인데, 타임 스크립트는 정적이다. 이 말은 코드 작성 단계에서 오류를 발견하기 힘든 자바스크립트에 반해, 코드를 작성하면서 바로 오류를 확인하고, 타입을 결정하는 등 실행 속도가 빠르다는 장점이 있다!
    다만 단점이 있는데, 코드 작성 시에 매번 타입을 결정하기 때문에 코드 작성이 번거로울 수 있고 코드량이 증가해서 컴파일 시간이 오래 걸린다.

  • 객체 지향 프로그래밍 지원
    이건... 설명 안하겠다. 클래스, 인터페이스, 상속, 모듈 등과 같은 객체지향 프로그래밍 패턴을 제공한다.

😮결론은?
코드 탐색에 용이하고 디버깅이 원활하게 진행될 수 있다는 특징이 있고, 자바스크립트와 호환이 가능해서 프로젝트의 일부분만 타입스크립트로 전환할 수도 있는 등 경제적이라 타입스크립트를 사용하는 개발자들이 늘고 있다!

그렇다는건 그런거고 아직 나는 안써서 모르겠다. 이렇게 쓰기만 해서는 무슨 말인지도 모르겠다. 역시 실제로 써봐야할 것 같은데...
한번도 안쓴 사람은 있지만 한번 밖에 안 쓴 사람은 없다는 그 대단한 언어를 나도 언젠간 쓰게 될까?

profile
잘하는 건 아닌데 포기하진 않을거야

0개의 댓글