우아한 타입스크립트 with 리액트
출판사에서 지원해주셔서 우아한 타입스크립트 with 리액트책을 읽어보았습니다.
좋은점, 아쉬웠던 점, 소감의 순서로 정리해서 말씀드리겠습니다.
좋은점
책이 컬러판입니다. 이게 별거 아니라고 할 수도 있겠지만, 컬러로 되어 있어서 코드에 있는 타입들을 구분하기가 편했습니다. 마치 IDE에서 타입 별로 색상을 구분해주는 것 처럼 말이죠. 그래서 가독성이 좋습니다. 아래 그림을 보시면 알 수 있을 거예요.
그리고 타입스크립트의 고급 문법들을 간략하게 다루고 있습니다. 인덱스 시그니처, 인덱스드 엑세스 타입, 맵드타입, 템플릿 리터럴 타입, 함수의 제네릭, 제한된 제네릭, 확장된 제네릭, 조건부 타입, 커스텀 유틸리티 타입등 꽤나 자세하게 다루고 있습니다.
또한 우아한형제들에서 실제로 사용하고 있는 코드들을 보는 것도 참고가 되고 좋았습니다.
다음과 같은 PickOne
유틸리티 타입을 사용하고 있구나 정도를 유추할 수 있고, 짧은 코드지만 해당 코드를 통해 많이 배울 수 있었습니다.
중간 중간에 나오는 우형 이야기
도 매우 재미있게 읽었습니다.
고민하고 있는 부분에서 우아한 형제들에서는 어떻게 진행했는지 알 수 있어서 좋았습니다.
아쉬웠던 점
반면에 아쉬웠던 점도 있었습니다. 저자가 여러명(16명!)이라 책의 필체와 난이도와 예제가 일정하지 않습니다. 어떤 부분은 자세하게 설명해주는데, 어떤 부분은 너무 대충 설명하고 지나갑니다. 코드에 주석만 덩그러니 남겨두고 알아서 공부해야하는 페이지도 꽤 있었습니다. 만약에 2판이 나온다면 이러한 부분들은 보완해서 나오면 좋겠습니다.
useUpdateJob에 대한 설명이 딱 3줄인데 그것도 useUpdateJob에 대한 설명이 아닙니다. UseMutationResult는 뭔지, JobUpdateFormValue는 뭔지, useMutation은 뭐하는애인지 읽는 사람은 모르는데 설명이 없습니다.
그냥 코드를 보고 동작을 유추할 수 있을 뿐이죠.
독자가 실행가능한 코드가 있으면 이해가 더 쉬운데, 그런게 별로 없습니다. 이 부분은 매우 아쉬운 부분입니다.
개인적인 생각입니다만, 학습은 인풋과 아웃풋 둘 다가 있야 합니다.
그러나 독자가 실행 가능한 코드가 없다면
아웃풋으로 뭔가 만들어 보기가 어려워서 아쉬웠습니다.
소감
타입스크립트를 조금이라도 알고 있는 사람에게 추천을 해야할 것 같습니다. 평소 고민하는 부분에 대한 해답을 찾을 수 있을 수도 있고요. (Enum을 써야하는가) 우아한 형제들의 코드를 엿볼 수 도 있어서 참고가 됩니다.
반면, 타입스크립트를 처음 접하는 사람에게는 추천을 해드리기가 어렵습니다. 불친절 하기 때문입니다. 다만 처음이라도 시간을 들여서 진득하게 타입스크립트와 리액트를 학습하고자 하는 사람에게는 도움이 될 것 같습니다.
최고의 장점은 우아한 형제들의 코드와 그들의 개발철학을 엿볼 수 있는 부분입니다. 이 부분이 궁금하신 분들은 보시는것을 추천드립니다.