일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 콜백
- 개발자
- Tanstack Query
- components
- 부트캠프
- 개발공부
- 탄스택쿼리
- 프론트엔드
- Tanstack
- 타입스크립트
- hooks
- 제로베이스
- JS
- 개발
- TS
- 프론트엔드 스쿨
- props
- HTML
- 조건문
- react
- 인터넷
- CSS
- 코딩
- 리액트쿼리
- JavaScript
- 자바스크립트
- 공식문서
- 프론트
- 리액트
- TypeScript
- Today
- Total
SUE 개발 블로그
TypeScript ) 타입스크립트란 ? 본문
타입스크립트는 자바스크립트의 확정판이라 할 수 있다.
자바스크립트를 더 안전하게 사용할 수 있게 타입 관련 기능들을 추가한 언어이기 때문.
자바스크립트는 변수를 선언하고 타입까지 지정하지 않는다.
( 변수의 타입을 프로그래머가 직접 정할 수 없기 때문 )
타입스크립트는 변수 a,b 에게 number 라는 숫자타입을 갖게 정의시켰다.
이제 a,b 변수에는 숫자 값 이외에 넣을 수 없다.
와 비교할 때 parseInt( ) 안해도 되겠다 !
위와 같이 타입스크립트는 자바스크립트에서 변수에 타입을 직접 지정할 수 있는 등
타입을 더 안전하게 사용할 수 있는 여러가지 기능들이 추가된 자바스크립트의 확장판이라고 할 수 있다.
( 자바스크립트의 모든 기본 문법들도 사용할 수 있다 ! )
그런데 타입스크립트는 왜 배워야할까 ? 🤔 자바스크립트는 아직도 건재하거늘 . . .
자바스크립트는 웹 브라우저 안에서만 동작하게 만들어졌고
아주 간단한 상호작용 정도를 처리하기 위해 개발된 언어이다.
그래서 궂이 엄격한 문법을 필요하지 않았고 유연한 문법을 설게했고
버그로 부터의 안정성과 견고함을 일부 포기했지만 쉽고 빠르고 간결하게 코드를 작성하는데 중점을 두고 만들었다.
하지만 node.js ( 자바스크립트의 실행환경 ) 가 등장.
웹 브라우저에서만 실행하던 자바스크립트를 어디서든 구동할 수 있게 되었다.
어떤 프로그램이든 자바스크립트를 이용해 만들 수 있어 ( 웹 서버, 모바일 앱, 데스크탑 앱 )
자바스크립트의 한계가 사라진 것.
그렇기에 복잡한 대규모 어플리케이션을 자바스크립트로 개발하니 자바스크립트의 엄격하지 않은 문법이 버그 발생 가능성을 높여서 프로그램의 전체적인 안정성을 떨어뜨리는 단점을 갖게 된 것이다.
그래서 이런 자바스크립트의 문제점을 극복하기 위해
기존 문법은 유지한채 안정성을 높인 새로운 언어가 필요했고
타입스크립트는 이때 등장한 더 복잡한 상황과 규모가 큰 프로그램을 자바스크립트로 만들기 위해
타입이라는 안전장치를 추가한 자바스크립트의 확장판 언어라고 할 수 있다.
난 그냥 요즘 이거 배우니까 나도 배워야겟지 . . . 😶
보다는 이렇게 배워야 할 대상에 대한 배경 지식을 알고 학습하는게 더 흥미롭고 재미있게 다가갈 수 있는 것 같다.
그냥 막연히 이게 더 좋다니까 ... 이게 더 많이 쓴다니까 보다는 " 왜 ? "
왜 기존의 자바스크립트 ( 심지어 인기도 많고 상위권인 언어 ) 대신 비슷하게 생긴 타입스크립트를
사람들이 선호하고 많은 사용자들을 점유하게 되었을까 ?
타입스크립트의 등장 배경과 자바스크립트와의 차이점 ( 타입 관련 기능 ) 을 앎으로써
타입스크립트의 대표적인 기능에 대해 어느정도 짐작하고 무엇이 다를지 유추하며 배울 수 있게 된다.
'TypeScript' 카테고리의 다른 글
TypeScript ) 인터페이스 (0) | 2024.02.22 |
---|---|
TypeScript ) 타입스크립트의 타입들 (0) | 2024.02.22 |
TypeScript ) 컴파일러 옵션 (0) | 2024.02.22 |
TypeScript ) 타입스크립트의 특징 ( 타입 시스템 ) (0) | 2024.02.22 |