길벗의 개발자 리뷰어 활동을 위해서 책을 제공받아 작성된 서평입니다...만 진심이 담겨있습니다.
허위 사실 유포는 😎일절 없음.
타입스크립트도 결국은 자바스크립트이다. 천천히 A부터 Z까지 하나씩 학습하면 큰 허들은 아니다. 변수와 배열, 인터페이스 등. 자바스크립트를 처음 배울 때처럼 하나씩 배우고 여기에 타입이라는 개념을 더 배우면 된다. 그런데 모두가 이렇지 않을 것이다. 누군가는 자바나 코틀린으로 개발하는 백엔드 개발자가 가끔씩 타입스크립트로 만들어진 UI 프레임워크를 수정하게 되면 아무리 간단한 미션이라도 상당히 어려움을 겪는다. 자바스크립트도 제대로 공부한적이 없다면 그야말로 재난이다. 눈치챘나? (그게 나야)
실무에서 이미 타입스크립트를 사용하고 있고, 처음부터 차근차근 학습하기 힘들면 필요한 부분만 먼저 학습하는 방법도 좋다. 먼저 경험을 하고 나중에 학습하면 오랫동안 기억하면서 쉽게 이해할 수 있다는 시니어 개발자의 이야기도 있다. 그렇다면 <타입스크립트 교과서>로 공부할 때에는 어떻게 했을까? 필자의 케이스를 설명하기 전, 필자의 타입을(?) 먼저 얘기하겠다. 만약 이 글을 읽는 당신도 나와 같은 타입이라면 아래 글이 참고가 될 것이다.
- 자바스크립트를 따로 학습하진 않았지만 짬바(?)로 지금까지 개발한 스프링 개발자
- 자잘한 프론트엔드쪽 개발 경험을 다 합쳐도 1년 미만
- 어쩌다보니 이미 실무에서 타입스크립트를 사용
- 하지만 동료 개발자가 만든 코드를 복붙하는 수준으로 진행
이미 자바와 코틀린을 사용하고 있는 필자에게 타입이라는 것 자체가 어색하지 않았다. 그렇다고 자바나 코틀린의 primitive type과는 다른 특징을 가진다. 그것을 이해하기 위해서는 1장의 1절과 3절을 읽어보면 좋다. 어떤 책이든 첫 부분에 핵심이 들어 있다.
즉, 타입스크립트 도입만으로 자바스크립트에 발생하는 대부분의 에러를 막을 수 있는 것입니다.
(p.26)
이 얼마나 감동적인 문장인가.
타입스크립트 좀 사용했다고 대부분의 에러를 막을 수 있다니. (물론 잘못 사용하면 오히려 족쇄) 타입스크립트를 사용하기 위한 이유가 충분하지 않은가? <타입스크립트 교과서>에서는 몇개의 예시를 통해 오타를 잡아주거나 타입에러를 미리 잡는 부분을 보여준다. 물론 타입스크립트를 쓴다고 타입에러가 아예 발생하지 않는건 아니다. 그런 부분도 초반에 언급하여 뒤에서 설명할 기본 문법의 근거를 잘 뒷받침해준다.
<타입스크립트 교과서>는 2장의 비중이 가장 높다. 당연하게도 기본적인 문법을 설명하는 부분이기 때문이다. 그래서 이 부분은 1절과 2절만 학습하고 바로 3장을 학습했다. 3장 이후를 학습하면서 궁금한 부분을 2장에서 찾아서 학습하는 방법이다. 이미 타입을 선언하는 언어에 익숙했기 때문에 하나씩 학습하는 것은 오히려 시간 낭비이다. 우연찮게도 3장 첫부분(p.186)에 저자도 이렇게 가이드하고 있다. 또한 8 페이지에 권장하는 학습 순서가 있으니 이 부분을 참고해도 좋다.
이렇게보면 진짜 타입스크립트의 첫 학습은 3장부터라고 볼 수 있다. 그런데 3장 첫 부분부터 난감한 용어를 만난다. es5? <타입스크립트 교과서> 안에서는 설명이 없기에 검색을 했고 이것이 자바스크립트 언어 지침이라는 것을 알게 되었다. 동시에 머릿속에 스치고 지나간 책 초반의 문장.
현재 자바스크립트에 대한 이해도가 낮다면 자바스크립트를 먼저 배우고 오세요.
(p.20)
아뿔사. 맘만 앞서서 자바스크립트는 노룩해버리고 타입스크립트와 춤추려고 했는데, 바로 스텝이 꼬여서 넘어지고 말았다. 그렇다고 지금부터 자바스크립트를 하나씩 공부하는건 말도 안된다. 춤도 넘어지면서 배우는 것이다. (춤 배워본적 없음) 모르는 것을 무조건 책에서 채우려고 하지 말고 별도로 조사하면서 학습하면 된다. 물론 자바스크립트의 기반 지식이 없는 상태에서 3장은 난이도가 높다. 그래서 일단은 클론 코딩 수준으로 따라하면서 일단 진도를 나가는 것에 초점을 맞추었다. 그러다보면 어느 순간 앞부분의 이해가 안되던 것들이 뒷부분에서 이해가 된다. 마치 흩어진 퍼즐이 맞듯이.
4장 이후로는 본인이 필요한 것 위주로 학습해도 된다. 필자의 경우에는 이미 실무에서 타입스크립트를 사용하고 있기에 굳이 4장을 학습할 필요는 없었다. 당장 실무에서 부족한 지식을 습득하고 싶었으니깐. 나중에 개발 환경을 구축해야 될 때 4장을 펼치면 되니깐. 그래서 바로 7장을 학습하였다. 실무쪽 환경과 같지는 않지만 유사한 형태의 실습을 할 수 있었다. 7장의 분량은 많지 않지만 React를 잘 아는 것이 아니라서 어려웠다. 3장을 학습할 때와 마찬가지로 부족한 부분을 조사하면서 조금씩 익숙해질 수 있었다.
자바스크립트 서적 중 두께가 상당한 기술서도 많다. 그런 것 치고는 <타입스크립트 교과서>는 분량이 많은 편은 아니다. 그렇다는건...
- 자바스크립트의 기본지식이 있는 사람
- 자바스크립트나 타입스크립트를 메인으로 개발하는 사람
- 자바스크립트나 타입스크립트 프레임워크 개발 경험이 풍부한 사람
이런 분들에게 맞춰진 서적이라고 생각된다. 베타테스터 실습 후기에보면 타입스크립트는 이제 필수라고 하는 분들이 많았다. 그분들은 이 서적을 통해 스스로의 수준을 업그레이드 했다. 그렇다면 나도 나중에 자바스크립트의 이해도를 높이고 나서 다시 이 서적을 펼치게되면 그때는 또 다른 인사이트를 받을 수 있지 않을까. 약간, 아주 약간 학습 의욕을 태워보면서 글을 마친다.
.
'Study' 카테고리의 다른 글
지금까지의 알고리즘은 애들 장난이었다 (똑똑한 코드 작성을 위한 실전 알고리즘) (0) | 2022.11.27 |
---|---|
디자인 패턴이 이런건지 몰랐어 (헤드퍼스트 디자인패턴 개정판) (0) | 2022.10.02 |
피, 땀, 눈물없이 할 수 없는 게임 이야기 (피, 땀, 리셋) (0) | 2022.08.28 |
이제는 기본서도 최신 정보가 업데이트 되어야 할 때 (이것이 안드로이드다. 개정 3판) (0) | 2022.07.24 |
[구글 엔지니어는 이렇게 일한다더라] 1부, 문화 (0) | 2022.05.29 |
Comment