오늘도 코딩하나

[Typescript] 타입스크립트로 블록체인 만들기_(1) 본문

Typescript/Lecture

[Typescript] 타입스크립트로 블록체인 만들기_(1)

오늘도 코딩하나 2025. 1. 6. 11:48

https://nomadcoders.co/typescript-for-beginners

 

타입스크립트로 블록체인 만들기 – 노마드 코더 Nomad Coders

Typescript for Beginners

nomadcoders.co

 

강의 내용 요약
#1.2 ~ #2.0

 

🤷‍♀️  Typescript를 왜 써야하지?

    ⇒ Javascript가 자바나 C#처럼 타입 안정성이 없다.

  • Javascript는 에러를 보여주려 하지 않는다.
    > [1, 2, 3, 4] + false   ⇒  '1,2,3,4false'
       → 배열이 완전히 사라짐
       → boolean인 false는 string이 됨
    다른 언어는 이를 허용하지 않지만 Javascrip는 허용한다.
  • Javascript는 함수를 올바르게 사용하도록 강제하지 않는다.
    > function divide(a, b) { return a / b }
    > divide("hello")
    ⇒ NaN
       → 입력값의 데이터 타입, 입력값의 개수를 체크하지 않는다.
  • 런타임 에러
    > const blog = { name:"tistory" }
    > blog.hello()
    [에러발생] Uncaught TypeError: blog.hello is not a function...
       → blog.hello()를 실행한 후 blog 객체에는 hello() 함수가 없다고 알려준다.
            🤔알려주는게 좋은거 아닌가? 뭐가 문제야?
              👉 좋은 프로그래밍 언어라면 blog객체를 분석해서 hello() 함수가 없다는걸 알려줘야 한다!

Typescript를 사용하면 타입 안정성에 있어서는 자바나 C#과 비슷한 개발 경험을 가질 수 있으며
Javascript에 대한 타입 안정성도 해결해 준다!

🧐 어때요? 안 쓸 이유가 없겠죠?

🤷‍♀️  Typescript는 어떻게 작동하지?

  • Typescript로 작성한 코드가 자바스크립트로 변환된다.
  • Typescript가 먼저 우리의 코드를 확인하여 변환된 Javascript 실행 중 발생할 수 있는 에러를 찾아내고,
    에러가 발생할 것 같은 코드를 감지하면 Javascript로 컴파일 되지 않는다.
  • 입력값의 데이터 타입, 입력값의 개수를 체크한다.

위에서 살펴봤던 예제를 Typescript에서 실행시켜보면 발생하는 오류를 확인할 수 있다.