[Typescript vs Javascript] 타입스크립트의 종말

2024. 4. 11. 17:12·프로그래밍
반응형
디아웃핏 M~3XL 남자 프리미엄 리얼 울코트 고급 빅사이즈 캐시미어 오버핏 롱코트
저는 언젠가 타입스크립트가 대체될 것이라고 생각합니다.

타입스크립트는 자바스크립트의 단점을 보완하여 만들어진 언어입니다.

자바스크립트와 타입스크립트의 가장 핵심적인 차이는 type이 있느냐 없느냐입니다.

Javascript

const a = 10
const b = 20
const c = "abc"

a + b // 30
a + c // "10abc"
a + Number(c) // NaN

Typescript

const a: number = 10
const b: number = 20
const c: string = "abc"

a + b // 30
a + c // "10abc"
a + Number(c) // Error

 

타입스크립트의 코드는 컴파일 과정에서 오류가 발생합니다. 서로 다른 자료형을 더했기 때문이죠.

이처럼 타입스크립트는 컴파일 과정에서 자료형을 한번 더 검사하게 됩니다.

덕분에 개발자의 실수를 줄이고 버그를 줄일 수 있도록 지원해주죠.

 

그럼에도 저는 앞으로 자바스크립트가 타입스크립트를 앞설것이라고 생각합니다.

지금부터 제가 그렇게 생각하는 이유와 타입스크립트의 전망과 예측을 조심스럽게 해보겠습니다.

1. NodeJS + Babel

NodeJS 등장 이후 자바스크립트는 빠르게 발전했습니다. 더이상 웹에서만 사용되는 언어가 아니게 됐죠.

빠르게 발전할 수 있었던 이유는 자바스크립트 언어를 자바스크립트로 컴파일하는 방식이 등장했기 때문입니다.

그로 인해, 과거의 구 문법을 버리고 같은 자바스크립트지만 전혀 다른 자바스크립트를 탄생시키게 되었습니다.

 

그리고 이 구조는 타입스크립트와 크게 다르지 않습니다. 타입스크립트 코드 또한 자바스크립트로 변환되기 때문이죠.

 

타입스크립트를 자바스크립트로 변환 VS (신) 자바스크립트를 (구) 자바스크립트 코드로 변환

 

어떤게 더 나을지는 저도 알 수 없습니다. 하지만 확실한건 두 언어는 구조적으로 크게 차이나지 않습니다.

2. 자바스크립트의 발전

자바스크립트는 언어 자체가 계속해서 발전하고 있습니다.

이는 단순히 더 많은 라이브러리와 프레임워크가 제작되는 것이 아니라, 언어의 스펙이 바뀌고 있습니다.

 

 

[프로그래밍] 2024년에 새롭게 추가되는 자바스크립트 신규 기능

프로그래밍 언어의 최신 기능을 탐색하는 것은 휴일이나 생일을 간절히 기대하는 것과 비슷합니다. 이는 새로운 선물을 탐구하는 설렘과 스릴로 가득 찬 시간입니다. ES2024®에 포함될 예정인 향

aierse.tistory.com

 

이렇게 매년 자바스크립트에는 새로운 기능들이 추가됩니다.

그리고 최근에 자바스크립트 신규 기능으로 데코레이터가 추가되었습니다. 

데코레이터는 클래스, 메소드, 속성 또는 매개변수의 동작을 수정하거나 강화할 수 있습니다.

 

원래 타입스크립트만의 기능이었지만 자바스크립트로 역수출된 기능입니다.

 

저는 바로 이 부분에서 타입스크립트의 전망을 예측했습니다.


 

 

타입스크립트는 자바스크립트의 단점을 해결한 훌륭한 언어입니다. 많은 기업에서 타입스크립트를 적용하고 있죠.

그러나 자바스크립트의 유연함을 타입스크립트의 안정성보다 더 중요시 여기는 사람도 많이 있습니다.

빠르게 개발해서 서비스를 런칭하는게 유리할 수도 있고, 안정적인 서비스를 구축하는게 목표일수도 있습니다.

 

서로의 언어는 각자의 이해관계에 따라 사용된다고 할 수 있죠.


자바스크립트는 계속해서 발전하고 있습니다. 즉, 두 언어간의 격차가 계속해서 줄어들 수 있다는 뜻이죠.

그 대표적인 예시가 바로 데코레이터입니다.

 

앞으로 타입스크립트의 장점이 자바스크립트로 역수출될 수 있다는 것이죠.

어쩌면 Type이 자바스크립트로 역수출 될수도 있습니다. 파이썬이 그러했던 것처럼요.

 

그래서 저는 타입스크립트가 망한다기보다는, 자바스크립트로 흡수될 것이라고 조심스럽게 예측해봅니다.

추천 포스트

 

[프로그래밍] 나만의 클린코드

클린 코드란 무엇일까요? 코드에 정답은 없습니다. 이 글에서는 제가 생각하는 클린 코드의 정의를 전달하고자 합니다. 먼저 구글에 클린코드의 정의를 검색하면 다음과 같습니다. 클린 코드(Cle

aierse.tistory.com

 

[VSCode] 협업시 프로젝트 환경설정 (.vscode 폴더)

VSCode는 여러 확장을 통해 기능을 강화시키고, 커스터마이징이 가능해서 많은 개발자들이 사랑하는 IDE 중 하나입니다.그러다보니 협업을 할때 팀원들도 VSCode를 사용하는 경우가 많이 있습니다.

aierse.tistory.com

이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.

반응형

'프로그래밍' 카테고리의 다른 글

[철학] NodeJS 쓰레드가 하나인 이유 - 공유지의 비극  (0) 2025.11.29
[프로그래밍] 깃허브 위키를 아시나요??  (0) 2024.04.15
[프로그래밍] 2024년에 새롭게 추가되는 자바스크립트 신규 기능  (0) 2024.04.11
[프로그래밍] 나만의 클린코드  (0) 2024.03.15
'프로그래밍' 카테고리의 다른 글
  • [철학] NodeJS 쓰레드가 하나인 이유 - 공유지의 비극
  • [프로그래밍] 깃허브 위키를 아시나요??
  • [프로그래밍] 2024년에 새롭게 추가되는 자바스크립트 신규 기능
  • [프로그래밍] 나만의 클린코드
Aierse
Aierse
리액트, 뷰 등 웹 개발의 모든 것
    반응형
  • Aierse
    <Aierse />
    Aierse
  • 전체
    오늘
    어제
    • 분류 전체보기
      • CS
      • 프로그래밍
        • Editer
      • Javascript
      • 웹
        • React
        • VueJS
        • NestJS
      • NodeJS
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • Github
  • 공지사항

  • 인기 글

  • 태그

    전체선택
    Workspace
    JSDOC
    dynamodb
    actions
    리액트
    nestjs
    가독성
    NoSQL
    클린 코드
    enum
    .vscode
    serverless
    JavaScript
    폴더 관리
    nodejs
    vscode
    체크박스
    CI/CD
    vue3
    lambda
    TypeScript
    Between
    react
    클린코드
    AWS
    프로그래밍
    async
    array every
    자바스크립트
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.4
Aierse
[Typescript vs Javascript] 타입스크립트의 종말
상단으로

티스토리툴바