
타입 스크립트를 처음 사용해보게 되었다. 문서와 도서를 구매하여 공부를 하면서 조금씩 적용해보고 있었다. 그런데 문득 생각이 들었다 왜 사용하고, 이게 어쩌다 만들어진 건지? 위키피디아에 나온다
TypeScript originated from the shortcomings of JavaScript for the development of large-scale applications both at Microsoft and among their external customers.
타입 스크립트(TypeScript)는 마이크로소프트와 외부 고객들 사이에서 대규모 응용 프로그램 개발을 위한 자바스크립트의 단점에서 비롯되었고, 2년간 내부 개발을 걸쳐 2012년 10월에 처음 공개되었다고 한다. 처음에는 성숙한 IDE 지원이 부족하고 리눅스에서는 사용할 수 없어 비판을 받았다고 한다. 추후 계속 릴리즈 되어 Stack Overflow 2020 개발자 설문조사에서2번째로 가장 사랑받는 프로그래밍 언어로 선정 되었고 타입 스크립트를 사용한 사람은 다시 사용할 거라고 공식문서에 나온다 ~!
자바스크립트가 서버 측 언어로도 사용될 수 있고 성장함에 따라 복잡해졌다. 서버 측 기술로서 엔터프라이즈 수준에서 성공할 수 있는 잠재력을 최대한 발휘할 수 없어 간극을 매우기 위해 타입 스크립트가 나왔다고 한다 ~!
출처: https://medium.com/geekculture/typescript-vs-javascript-e5af7ab5a331
그래서 왜 사용하는 데? or 왜 써야하는 데 ?
먼저 자바스크립트와 타입 스크립트 차이를 알아보자. 레츠 기릿 ~
TypeScript | JavaScript |
자바스크립트의 상위 집합(superset), 컴파일 언어, 정적 타이핑 | 인터프리터 언어, 동적타이핑 |
객체지향 | 프로토타입 기반, 다중 패러다임, |
대규모 프로젝트 | 소규도 프로젝트 |
진입 장벽이 높음 | 진입 장벽이 낮음 |
클래스기반 상속 인터페이스 및 수정자 사용가능 | 인터페이스가 없다 |
컴파일 언어 - 코드를 컴파일러를 통해 기계어로 변환 후에 코드를 실행!
인터프리터 - 코드를 기계어로 변환 과정 없이 한 줄 한줄 해석하여 실행
정적 타이핑 - 자료형(type)을 컴파일 당시에 결정하는 것,
동적 타이핑 - 컴파일이 아닌 런타임 시 결정
이러한 차이점과 특징이 있으며, 타입 스크립트는 타입 선언 기능 존재
//JS
const num1 = 10;
const num2 = '20';
console.log(num1 * num2) //200
//TS
const num1:number = 10;
const num2:string = '10';
console.log(num1 * num2)
자바스크립트에서는 형 변환으로 인하여 결과 값이 200이 나온다. 반면 타입 스크립트에서는 타입을 선언하여 버그가 일어나는 것을 막아준다. 자바스크립트는 런타임 중에 에러를 알 수 있으며, 타입 스크립트는 컴파일 전에 에러를 알 수 있다. 이로 인하여 사용하는 이유 하나를 알았다 ~ 버그 조기 예방!
도입을 고려해야 하는 이유!(장점)
- 조기 버그 감지
- 엄격한 타이핑
- 타입 추론
- 코드 관리
- 팀 성과 향상 - 마이크로소프트는 개발팀 성능이 5배 좋아졌다고 주장한다
- 강력한 커뮤니티
- 점진적 전환 가능
단점
- 필수 컴파일?
- 타이핑이 많아짐
- 타입 스크립트를 활용해도 해결할 수 없는 오류가 나타날 때가 있다
결론
처음 사용할 때는 시간도 없는 데 언제 타입 설정하고 있나? 코드량이 많아지고 설정할 것도 많고, 단순 데이터 타입에도 지정해야 하나 라는 생각이 들었다. 꼭 써야 하나? 이러한 생각이 들었다. 공부를 하면서 타입 스크립트를 점차 적용 해보니 장점을 알 수 있었다. 정적 타이핑 언어로 높은 코드 탐색으로 개발 시 경고 및 오류를 미리 알 수 있어 사전 에러 방지하여 런타임시 예기치 않은 동작 가능성이 감소했다. 사람은 우발적인 실수를 많이 한다. 이또한 방지가 가능하다. 자바스크립트를 사용할 때는 런타임시 에러가 발생하여 오류 찾기가 어려워 디버깅하여 에러 찾기 바빴다. 타입스크립트를 사용하는 이유는 단점보다 장점이 더 많기 때문이라고 사용한다고 생각한다.
참고자료
https://joshua1988.github.io/ts/
https://typescript-kr.github.io/
'TypeScript' 카테고리의 다른 글
타입스크립트 any vs unknown 차이 및 사용법 (0) | 2023.03.02 |
---|---|
타입스크립트 interface vs type (0) | 2023.02.28 |

타입 스크립트를 처음 사용해보게 되었다. 문서와 도서를 구매하여 공부를 하면서 조금씩 적용해보고 있었다. 그런데 문득 생각이 들었다 왜 사용하고, 이게 어쩌다 만들어진 건지? 위키피디아에 나온다
TypeScript originated from the shortcomings of JavaScript for the development of large-scale applications both at Microsoft and among their external customers.
타입 스크립트(TypeScript)는 마이크로소프트와 외부 고객들 사이에서 대규모 응용 프로그램 개발을 위한 자바스크립트의 단점에서 비롯되었고, 2년간 내부 개발을 걸쳐 2012년 10월에 처음 공개되었다고 한다. 처음에는 성숙한 IDE 지원이 부족하고 리눅스에서는 사용할 수 없어 비판을 받았다고 한다. 추후 계속 릴리즈 되어 Stack Overflow 2020 개발자 설문조사에서2번째로 가장 사랑받는 프로그래밍 언어로 선정 되었고 타입 스크립트를 사용한 사람은 다시 사용할 거라고 공식문서에 나온다 ~!
자바스크립트가 서버 측 언어로도 사용될 수 있고 성장함에 따라 복잡해졌다. 서버 측 기술로서 엔터프라이즈 수준에서 성공할 수 있는 잠재력을 최대한 발휘할 수 없어 간극을 매우기 위해 타입 스크립트가 나왔다고 한다 ~!
출처: https://medium.com/geekculture/typescript-vs-javascript-e5af7ab5a331
그래서 왜 사용하는 데? or 왜 써야하는 데 ?
먼저 자바스크립트와 타입 스크립트 차이를 알아보자. 레츠 기릿 ~
TypeScript | JavaScript |
자바스크립트의 상위 집합(superset), 컴파일 언어, 정적 타이핑 | 인터프리터 언어, 동적타이핑 |
객체지향 | 프로토타입 기반, 다중 패러다임, |
대규모 프로젝트 | 소규도 프로젝트 |
진입 장벽이 높음 | 진입 장벽이 낮음 |
클래스기반 상속 인터페이스 및 수정자 사용가능 | 인터페이스가 없다 |
컴파일 언어 - 코드를 컴파일러를 통해 기계어로 변환 후에 코드를 실행!
인터프리터 - 코드를 기계어로 변환 과정 없이 한 줄 한줄 해석하여 실행
정적 타이핑 - 자료형(type)을 컴파일 당시에 결정하는 것,
동적 타이핑 - 컴파일이 아닌 런타임 시 결정
이러한 차이점과 특징이 있으며, 타입 스크립트는 타입 선언 기능 존재
//JS
const num1 = 10;
const num2 = '20';
console.log(num1 * num2) //200
//TS
const num1:number = 10;
const num2:string = '10';
console.log(num1 * num2)
자바스크립트에서는 형 변환으로 인하여 결과 값이 200이 나온다. 반면 타입 스크립트에서는 타입을 선언하여 버그가 일어나는 것을 막아준다. 자바스크립트는 런타임 중에 에러를 알 수 있으며, 타입 스크립트는 컴파일 전에 에러를 알 수 있다. 이로 인하여 사용하는 이유 하나를 알았다 ~ 버그 조기 예방!
도입을 고려해야 하는 이유!(장점)
- 조기 버그 감지
- 엄격한 타이핑
- 타입 추론
- 코드 관리
- 팀 성과 향상 - 마이크로소프트는 개발팀 성능이 5배 좋아졌다고 주장한다
- 강력한 커뮤니티
- 점진적 전환 가능
단점
- 필수 컴파일?
- 타이핑이 많아짐
- 타입 스크립트를 활용해도 해결할 수 없는 오류가 나타날 때가 있다
결론
처음 사용할 때는 시간도 없는 데 언제 타입 설정하고 있나? 코드량이 많아지고 설정할 것도 많고, 단순 데이터 타입에도 지정해야 하나 라는 생각이 들었다. 꼭 써야 하나? 이러한 생각이 들었다. 공부를 하면서 타입 스크립트를 점차 적용 해보니 장점을 알 수 있었다. 정적 타이핑 언어로 높은 코드 탐색으로 개발 시 경고 및 오류를 미리 알 수 있어 사전 에러 방지하여 런타임시 예기치 않은 동작 가능성이 감소했다. 사람은 우발적인 실수를 많이 한다. 이또한 방지가 가능하다. 자바스크립트를 사용할 때는 런타임시 에러가 발생하여 오류 찾기가 어려워 디버깅하여 에러 찾기 바빴다. 타입스크립트를 사용하는 이유는 단점보다 장점이 더 많기 때문이라고 사용한다고 생각한다.
참고자료
https://joshua1988.github.io/ts/
https://typescript-kr.github.io/
'TypeScript' 카테고리의 다른 글
타입스크립트 any vs unknown 차이 및 사용법 (0) | 2023.03.02 |
---|---|
타입스크립트 interface vs type (0) | 2023.02.28 |