고양이hyebin
[Udemy] Typescript :기초부터 실전형 프로젝트까지 강의 후기
March 3, 2024

타입스크립트를 꼭 배워야 하나 ? 라는 생각이 들었다.

타입스크립트를 알기 전, 나는 타입이 중요하다는 것은 들어본적은 있지만, 왜 타입스크립트를 사용해야 하는지 정확히 이해하지 못했다. 당장 진행 중인 프로젝트는 빠른 결과물을 만들어 내야 했고, 특히 혼자서 작업하는 프로젝트일수록 더욱 타입스크립트의 목적을 잘 이해하지 못했다. 그래서 발생한 타입 에어는 그때 그때 당장 처리하면서 프로젝트를 이어가는데 노력했다.

타입스크립트를 배워야 하는 이유가 생겼다.

프로젝트가 성장하면서 복잡도가 증가했고, 컴포넌트를 최대한 분리해도 이해하기 어려운 부분이 많아졌다. 로컬환경에서 발생하는 타입에러는 쉽게 해결 할 수 있었지만, 빌드된 운영 환경에서는 이를 처리하기 어려웠다. 이러한 상황에서 타입스크립트의 필요성에 대해 생각하게 되었다. 얕은 지식으로는 부족하다고 느꼈던 타입스크립트를 깊게 학습하고자 수강신청을 결심했다.

글또 9기에서 유데미 강의를 수강 할 수 있는 기회를 제공해주셨다. 덕분에 목표가 생겼고 더 열심히 들을 수 있었다. 🙂

강의 구성 내용

png
png

강의는 총 16개 섹션으로 구성되어 있으며, 다음과 같은 목록을 배울 수 있다.

  • Typescript를 사용해야 하는 이유
  • Typescript 작동방식에 대한 깊이 있는 이해
  • Typescript 기본/심화 문법을 나의 개발 프로젝트에 적용하는 법
  • React와 NodeJS/Express 개발환경에서 Typescript를 효과적으로 활용하는 법
  • 실제와 거의 흡사한 Typescript 프로젝트 실습 (템플릿 코드 제공)

강의 정리

강의에 구성 섹션 중에서 필요한 우선순위를 정해서 듣기로 했다.

Types의 개념, Typescript 컴파일러 작동 방식

섹션1, 섹션2 에서는 TypeScript의 기초적인 개념과 다양한 타입에 대해 설명한다.

  1. 숫자, 문자열, boolean, 타입 추론 과정으로 타입을 이해한다.
  2. 객체, 배열, 튜플, 열거형, any, union, literal, aliasli 등 타입의 개념을 배운다.
  3. 함수에 관련된 반환타입, 콜백 타입, 타입의 기능을 하는 함수에 대한 타입을 이해한다.
  4. unknown 타입과 never에 대해 이해한다.

타입스크립트를 자바스크립트로 컴파일 하기 전 컴파일 오류가 발생한다. 이는 별도의 단계가 생기고 추가로 검사를 하기 때문에 실수 파악이 쉽고 더 안정적인 타입 검증이 가능하다.

Typescript와 ES6 문법

let, const, 화살표 함수, 기본값 매개변수, 스프레드 연산자, 나머지 매개변수, 배열 및 비구조화 할등 등 개념을 다시 익힌다.

타입스크립트는 자바스크립트로 컴파일 할 뿐만 아니라, ES6의 문법을 사용할 경우 ES6에 맞게, ES5의 문법을 사용할 경우 ES5에 맞게 컴파일 된다.

클래스, 인터페이스, 제네릭, 데코레이터

클래스가 무엇이고 왜 사용하는지, 클래스의 상속이라는 개념과 인터페이스가 무엇인지, 자바스크립트에서 어떻게 컴파일 되고 활용할 수 있는지

클래스 vs 인스턴스

png
png
  • 객체 : 데이터를 저장하고 메서드를 실행하는데 사용하는 자료구조
  • 클래스 : 객체의 ‘틀’
  • 인스턴스 : 클래스 기반으로 생성한 객체
  • 인터페이스 : 객체의 구조를 정의, 커스텀 타입으로 사용
  • 제네릭 : 타입을 마치 함수의 파라미터처럼 사용하는 것을 의미
  • 데코레이터 : 일종의 함수로 코드 조각을 장식해주는 역할을 하며, 타입스크립트에서는 그 기능을 함수로 구현하는 것

강의 후기

Typescript :기초부터 실전형 프로젝트까지” 강의는 이론 강의를 선 수강 후 그에 대한 연습문제를 풀어볼 수 있어 좋았다. 다양한 예제 코드를 보면서, 다시 한번 이론을 정리할 수 있었다. 강의만 봤을때는 당연히 이해했다고 생각했던 이론도, 막상 문제를 풀었을 때 틀린 문제가 몇 있었다. 😅 타입을 우습게 보지 말자. 그렇다고 너무 어렵게 보지도 말자. 타입스크립트는 단지 자바스크립트에서 문법이 추가된 언어고, 새로운 언어가 아니다.

타입스크립트를 멀리 했었던 이유를 돌이켜보면, 개발 속도가 느려지고 혼자 프로젝트를 진행하면서 “굳이?” 라고 안일하게 생각했던 것 같다. 그러나 타입스크립트는 협업하는 과정에서 타입은 하나의 문서와 역할을 한다. 전체적인 틀을 파악할 수 있고, 코드의 이해를 높여준다. 또한, 자동완성 기능을 활용하여 자잘한 오타로 인한 에러를 줄일 수 있다. 따라서, 타입스크립트를 적용하는 것이 장기적으로든 개발을 하면서든 시간을 더 단축할 것 같다.

전체적으로 섹션도 많고 강의 시간도 길었지만, 강의 하나하나가 독립적으로 짧고, 자막도 잘 나와있어 듣는 동안 부담이 없었다. 강의를 끝까지 다 듣진 못했지만 필요한 부분을 찾아서 나머지도 들을 예정이다.

강의를 들으면서 새롭게 알게된 사실인데 유데미에서 학습 알림 도구가 따로 있었다. 아직 사용해 보지 않았지만 핸드폰 번호로 푸시 알림 기능까지 가능한 것 같다! 나머지 강의는 학습 일정을 미리 등록해서 들어봐야겠다 🚀

png
png

해당 콘텐츠는 유데미로부터 강의 쿠폰을 제공받아 작성되었습니다.