러닝 리액트 - 리액트와 리덕스로 구축하는 효율적인 웹 UI
알렉스 뱅크스.이브 포셀로 지음, 오현석 옮김 / 한빛미디어 / 2018년 2월
평점 :
구판절판


Learning React (한빛 미디어)를 읽고

최근 프론트엔드 분야 웹 개발을 하려면 공부해야할 게 너무 많다. 이럴수록 기초를 잘 쌓아놔야 한다는 생각이 든다.

자바스크립트라는 Node.js 가 나오며 브라우저에서뿐 아니라 운영체제 위에서도 작동이 가능해졌다. 이 후로 자바스크립트는 엄청 발전했다. 특히 12년 중반 Angular.js에 구글이 참여하고 facebook에서 react를 프로젝트에 참여하면서 기업형 오픈소스 형식으로 진화했다. 기업형 오픈소스는 오픈소스와 기성품의 장점을 합친 것 같다.

10년 전이라면 C, JAVA만 잘해도 괜찮았다면 현재는 Javascript를(Typescript) 공부해둬야 할 것 같다. 가장 수요가 많고 할 수 있는 범위가 넓어진다. 그리고 react 나 angular 등을 통해 Javascript의 단점들을 커버하면 퍼포먼스를 뽑을 수 있는 사람이 될 수 있을 것이다.

이 책의 첫 느낌은 "꼼꼼하다"였다. 그리고 책을 다읽은 지금 책의 느낌은 "친절하다" 다.
신기술은 필연적으로 익숙하지 않다. 거기에 더해 필요성을 모르면 다가오지 않는다. 이 책을 친절하다라고 여긴 이유는 각 장의 시작을 서술하며 해당 개념이 어떻게 개발자들한테 다가오는 지, 필요 한지를 설명한다. 예를 들어 순수 리엑트 파트에서 순수 기존 javascript의 경우 함수의 매개변수로 사용한 변수가 바뀔 수 있어서 디버깅이 힘들다는 문제점을 확실히 설명해주고 순수리엑트 방식을 설명해주는 식이다. 이런 식의 설명은 독자가 왜 이 새로운 개념을 받아들여야하는 지에 대한 내면적 고민을 할 필요를 줄여든다. 그리고 각 개념들은 그냥 설명만 한게 아니라 예제 코드를 통해 보여준다. 전체 코드는 github을 통해 공개해놓았다. (이 코드는 출판사에서 한글로 고친 버전도 제공해준다.) 그리고 동시에 React 개발에 도움이 되는 개발자 도구들도 알려준다.

다음은 책을 읽으면서 메모를 한 React의 장점들이다. 
* React는 라이브러리로 기존 javascript의 단점을 개선해주는 방향으로 개발 되었다.
* React를 사용하면 자바스크립트 안에서 HTML처럼 보이는 코드를 작성할 수 있고 DOM에서 생기는 모든 문제를 해결하면서도 다루기 쉽고 예상치 못한 동작으로 개발자를 놀라게 하는 일도 없다. (먼가 든든해진다.)
* 함수형 프로그래밍은 선언적 프로그래밍(프로그래머가 쉽게 추론할 수 있는 코드)을 도와준다. (map, reduce)
* 순수함수(파라미터에 의해서만 반환값이 결정되는 함수)는 테스트 하기 쉽다.
* 트랜스 파일링으로 브라우저에 종속되는 문제 해결
* React는 뷰를 만들기 위한 라이브러리, ReactDOM은 UI를 실제로 브라우저에 랜더링
* HTML은 브라우저가 문서 객체(DOM)을 구성하기 위해 따라야 하는 절차

개인적으로 웹 개발을 시작하는 입장에서 이책을 2,3 번 읽어봐야할 것 같다.
첫 독서에선 전체적인 개념을 이해하고 왜 사용하는 지에 대해 공감하는 게 우선이었다. 이제 코드를 직접 따라치며 React로 개발 해봐야겠다. 글로 이해한 것과 직접 코딩하며 겪는 경험은 천지 차이다. 그래도 첫 독서에서 React가 정말 매력적이다는 생각을 했지만, 좋은 코드가 뭔지에 대해 주워듣고 느낀 게 없다면 우선 코드 중심으로 따라치는 것을 추천하고 싶다. 아직 최신 책이라 그런지(너무 스팩이 자주 바뀐다.) 예제가 맞게 돌아간다. 얼른 기초를 닦아야 겠다.


* React는 라이브러리로 기존 javascript의 단점을 개선해주는 방향으로 개발 되었다.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo