-
-
모던 자바스크립트 개발자를 위한 리액트 프로그래밍 - Node.js와 리액트를 활용한 최신 프런트엔드/백엔드 프로그래밍 ㅣ 위키북스 오픈소스 & 웹 시리즈 86
쿠지라 히코우즈쿠에 지음, 윤인성 옮김 / 위키북스 / 2017년 12월
평점 :
절판
책 다 끝냈습니다. 약 두달 반 정도가 걸렸는데 본업에 따로 근무하면서 리눅스를 배우고 실제 프로젝트를 직접 만드느라 시간이 오래걸렸습니다. 일 안하시고 공부만 하시는 분이면 훨씬 빨리 끝낼 수 있습니다. 이책 진짜 개추입니다. 전에도 Vue나 Angular, React같은 MVC 프레임웍을 배워보려고 시도를 많이 했는데 도저히 이해가 안되다가 이책 보고 한큐에 이해했습니다.
-------장점들:
첫째: MVC 프레임웍 중에 React가 Angular보다 구조적으로 이해하기 쉽습니다. 이건 책이 잘 쓰인거라기보다는 React자체가 하나의 웹 요소를 만들고자 할때 굉장히 뚜렷한 MVC 모델을 가지고 있기 때문입니다. 아예 대놓고 render()가 있질 않나, 웹 요소의 생성자(constructor)안에 state라는 값을 가지고 있는 등 꼭 필요한 요소는 적절한 네이밍으로 가지고 있으면서 불필요한 요소는 거의 없습니다. 실제 React를 쓰는지 안쓰는지와는 별개로, React를 배우는 것 자체가 웹 MVC 모델의 이해에 도움이 정말 많이 됩니다.
둘째: 책의 구성이 좋습니다. 일본어 원본을 읽어보지 않아서 잘 모르지만 갑자기 난이도가 수직상승하는 부분 없이 대부분 책에 있는 내용으로 커버 가능합니다. 그 외에도 책이 리액트 말고도 Webpack이나 npm, superagent를 이용한 ajax 등 SPA 웹개발에 자주 사용되는 관행을 잘 설명해주고 있어서 나중에 다른 프레임웍으로 갈아탈 때에도 훨씬 쉽게 갈아탈 수 있을 것 같습니다.
셋째: 번역이 좋습니다. 이것 말고도 일본 원서를 번역한 프로그래밍 서적을 몇개 봤는데 용어 관리가 대체로 잘 안되는 편입니다. 이상한 한자어투가 튀어나온다던가 하는 경우가 많았는데, 이건 그런걸 하나도 못 느꼈습니다. 오히려 국내에서 나오고도 이상한 전문용어로 헷갈리게하는 서적들이 많은데 이건 그런게 하나도 없습니다.
넷째: 나온지 반년도 안된 책이라 소스코드가 대부분 오작동 없이 잘 동작합니다. 물론 아예 에러가 0는 아니고 중간에 손 보고 나서야 컴파일 되는 구간이 한두개는 있었지만 웹개발 서적으로 이정도면 굉장히 양호한 것 같습니다. 일본 원서는 나온지 조금 더 된 것 같은데, 이건 번역하신 분의 검수 덕분일까요? 아니면 원서가 개정판을 내놓았기 때문일까요? 잘 모르지만 여튼 배우는 입장에선 좋았습니다.
---------단점들
첫째: React 자체의 한계점이 생각보다 꽤 큽니다. 중간에 여러 React 개별 요소(Component)를 하나로 묶는 방안으로 Flux를 설명하는 부분이었는데, 정말 머리털 빠질뻔했습니다. 게다가 챕터도 짧습니다. 왜이렇게 복잡한데 대충설명했지? 라고 생각했는데 제 착각이었습니다. React의 상태(State)관리는 원래 어려운게 맞습니다. 이건 나중에 대략적인 정보를 찾아보니 React와 javascript의 태생적인 한계점인 듯 합니다. Flux나 Redux, Mobx등은 이 모든 것을 최대한 간결하게 처리하고자 나온 처방이지만 이 역시도 기존의 패러다임을 뒤집어야 하기 때문에 매우 복잡해질 수밖에 없는 부분인 것 같습니다.
둘째: 모든 구성이 다 마음에 들지만 마지막 페이지의 머신러닝이 좀 쌩뚱맞습니다. 사실 React도 여러 외부 라이브러리를 사용해야하다보니 이런식으로 다른 외부 라이브러리에 대한 접촉 기회를 주는 것은 좋지만 좀더 실용적인 예제가 더 좋을 것 같습니다. 책이 겨냥하는 독자층도 거의 엔지니어보다 초심자들인듯한데 실제로 혼자 몇가지를 개발해보니 material-ui같이 프론트엔드를 예쁘게 꾸며주는 라이브러리나 bcrypt, auth0같은 암호화/인증 라이브러리가 훨씬 쓸모있었습니다. 좀더 실용적인 리액트 플러그인/라이브러리를 소개해 줬으면 좋을 것 같아요.
어쨌든 개강추입니다!! 이 책 덕분에 드디어 풀스택 지식을 완성할 수 있었어요!!