반응형
타입스크립트를 처음 알게되었을 때부터 궁금했던 문제다.
⌨️문제의 코드
let age = 20; // 1번
let age: number = 20; // 2번
둘중 어느것이 더 좋을까?
처음에는 생각했다. 타입스크립트니까...항상 타입을 명시하는 것이 좋지 않을까?
그런데, 번거로웠다. 복잡했다. 바로 옆에 숫자가 쓰여져있다. 타입이 number인것이 뻔하다. 굳이 타입을 써야할까?
문법에도 오류가 없다.
👨🏫강의에서 발견한 해결책
혼자 공부하면서 이런 저런 의문들이 남게 되었다.
결국 나는 타입스크립트를 더 확실하게 공부하기 위해서 Udemy 강의를 구매했다.
다른 무료 타입스크립트 강의들 보다 퀄리티가 좋았다. 타입스크립트를 쉽게 잘 가르쳐주는 것 같다.
강의에서는 1번을 쓰라고 가르쳐줬다.
let age = 20; // 1
let age: number = 20; // 2
🚫타입을 명시하지 말아야 하는 경우
- 변수를 선언과 동시에 초기화 할 때
✅타입을 명시해야 하는 경우
- 함수의 매개변수
- 함수의 반환값
📕이펙티브 타입스크립트에서 발견한 해결책
강의가 틀린것일수도 있다. 그래서 다른 레퍼런스가 필요했다.
이 책에서도 모든 변수에 타입을 선언하는 것은 비생산적이라고 설명하고있다고 한다.
해당 책을 정리한 블로그들에서 찾을 수 있었다.
이펙티브 타입스크립트라는 책은 이미 알고있었다. 하지만 구매하지 않았었다.
이번에 책 내용을 조금 알게 되면서 나에게 필요한 책이라는 생각이 들었다.
타입스크립트를 어떻게 사용해야 더 좋은지 항상 궁금했었다.
이 책이 해결책을 줄 수 있을 것 같다.
이 책을 읽어봐야겠다.
💡결론
1번(타입 추론)을 쓰자.