Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- Java
- JavaScript
- 티스토리챌린지
- Vue.js
- 오블완
- 자바
- 백준
- 자바스크립트
- 소켓
- pintos
- userprog
- 알고리즘
- 크래프톤 정글
- 시스템콜
- 리액트
- 모션비트
- 크래프톤정글
- corou
- 4기
- 스택
- CSS
- 사이드프로젝트
- 코드트리
- Flutter
- 핀토스
- 큐
- HTML
- defee
- 나만무
- TiL
Archives
- Today
- Total
미새문지
Typescript란? 본문
728x90
Typescript란?
Typescript는 마이크로소프트에서 개발한 오픈 소스 프로그래밍 언어로, Javascript의 상위 집합이다.
또한, 타입스크립트는 정적 타입을 지원하며, 자바스크립트 코드에 선택적으로 타입을 추가할 수 있게 해주고, 최종적으로 타입스크립트 코드는 자바스크립트로 변환되어 브라우저나 node.js 환경에서 실행된다.
자바스크립트는 대규모 애플리케이션을 개발할 때 동적 타입 언어의 특성상 버그를 찾기 어렵고 코드 유지보수가 힘들어지는 문제가 있었는데, 이를 해결하기 위해 타입스크립트를 개발하게 됐다.
자바스크립트의 상위 집합이기 때문에 타입스크립트는 ES6+의 모든 기능을 지원하며, 기존 자바스크립트 라이브러리와도 완벽히 호환된다.
타입스크립트 주요 특징
- 정적 타입
- 변수, 함수 등에 타입을 명시적으로 정의할 수 있다.
- 컴파일 단계에서 타입 오류를 잡아내어 코드 안정성을 높일 수 있다.
- 타입 추론
- 타입을 명시적으로 작성하지 않아도, 타입스크립트가 값을 보고 타입을 유추한다.
- 인터페이스와 타입 정의
- 객체 구조를 정의하고 이를 기반으로 타입 안전성을 보장한다.
- ES6+ 기능 지원
- 최신 ECMAScript 문법을 지원하며, 이전 버전의 자바스크립트로 컴파일이 가능하다.
- 대규모 애플리케이션에 적합
- 코드의 모듈화와 유지보수를 쉽게 한다.
- 강력한 개발 도구 지원
- vscode와 같은 IDE에서 코드 자동 완성, 리팩토링, 타입 체크 등을 제공한다.
타입스크립트 장점
- 코드 안정성 증가
- 정적 타입 검사로 인해 런타임 오류를 줄이고, 코드를 작성하는 동안 오류를 발견할 수 있다.
- 코드 가독성과 유지보수성 향상
- 타입 정보를 통해 다른 개발자가 코드의 의도를 쉽게 이해하고 유지보수할 수 있다.
- 대규모 프로젝트에 적합
- 모듈화와 강력한 타입 시스템으로 인해 복잡한 프로젝트의 유지보수가 용이하다.
- 향상된 IDE 지원
- 코드 자동 완성, 코드 탐색, 오류 표시 등의 기능이 개발 생산성을 높여준다.
- ES6+ 기능 지원
- 최신 자바스크립트 기능을 사용하면서도 브라우저 호환성을 유지할 수 있다.
타입스크립트 단점
- 학습 시간 소요
- 자바스크립트에 익숙해도 정적 타입 시스템과 새로운 문법을 배우는 데 시간이 필요할 수 있다.
- 컴파일 단계 필요
- 타입스크립트는 자바스크립트로 변환해야 해서, 추가적인 빌드 과정이 필요하다.
- 초기 개발 시간 증가
- 코드 작성 시 타입을 명시적으로 선언하는 과정에서 초기 개발 속도가 느려질 수 있다.
- 런타임 오류 완전 방지는 불가능
- 타입 검사는 컴파일 단계에서만 이루어지기 때문에, 런타임 시 예외적인 오류는 여전히 발생할 수 있다.
타입스크립트와 자바스크립트의 차이점
특징 | 타입스크립트 | 자바스크립트 |
타입 시스템 | 정적 타입 지원 | 동적 타입 |
컴파일 필요 | 자바스크립트로 변환 필요 | 바로 실행 가능 |
확장성 | ES6+ 기능과 추가 기능 지원 | 기본 ECMAScript 기능만 지원 |
오류 검출 시점 | 컴파일 시점 | 런타임 시점 |
단점보다 장점이 훨씬 많기 때문에 타입스크립트를 사용하게 되고, 기업에서 거의 기본적으로 타입스크립트로 개발한다.
특히, 개발자들간의 협업에서 타입 정의와 인터페이스를 통해 명확하게 전달이 가능하고, 코드를 일관성 있게 짤 수 있어 가독성이 좋아진다.
타입스크립트를 사용해야 할 상황
- 대규모 프로젝트나 팀 개발을 할 때
- 금융이나 의료 등, 코드 안정성이 중요한 애플리케이션
- 정적 타입을 통해 오류를 줄이고 싶은 경우
- 최신 자바스크립트 기능을 사용하면서도 하위 호환성을 유지하고 싶은 경우
728x90
'개발 TIL' 카테고리의 다른 글
클로저(Closure) (0) | 2025.01.07 |
---|---|
SOLID 원칙 (0) | 2025.01.06 |
defee headline api 연동 테스트 및 잡담 (0) | 2025.01.02 |
프로그래머스 가장 큰 수 (0) | 2024.12.23 |
프로그래머스 K번째 수 (0) | 2024.12.23 |