|
이 책은 페이스북에서 개발된 UI 개발용 자바스크립트 라이브러리인 React에 대해 설명하고 있다. 제목에 나와있는 것처럼 초급개발자들을 대상으로 하는 책이지만 리액트에 대해 아무것도 모르고 이 책을 읽을 경우 이해하는데 많은 시간이 걸릴 수 있다. 개인적으로는 공식 리액트 홈페이지에서 튜토리얼을 먼저 읽어본 후에 이 책에 도전하는 것을 추천한다. 역자의 서문에서도 언급된 사항이지만 이 책의 원서는 리액트 0.11 버전을 대상으로 쓰여졌다. 그리고 실제 번역 과정 중 리액트 버전이 0.14 RC까지 올라가 버린 관계로 최신 내용들은 역자 주석을 통해 추가 설명하는 방식으로 되어 있다. 그리고 현재(2017.06.23) 공개되어 있는 리액트의 최신 버전은 15.6.1 이다. 14버전까지는 0.14.x 형식으로 표시하다가 15버전 부터는 15.x.x 형식으로 버전 형식이 변경되었으니 독자 분들은 참고하기 바란다. 책은 총 18개의 챕터로 구성되어 있다. 결론적으로 이 책은 개발자들이 리액트 세계의 탐험을 시작하는데 꼭 필요한 내용들만을 잘 담고 있으며 목적지에 도달하기 위한 방향도 잘 안내해주는 좋은 지도가 될 것으로 생각한다. |
|
먼저 react와 vue 차이를 아래 블로그에서 한번 보는 것이 좋겠다.
https://joshua1988.github.io/web_dev/vue-or-react/ 요즘 최신 기술, 자바스크립트, 비동기 기술, SPA(Single Page Application) 구현을 생각하는 사람이라면 한번 볼만한 책이다. 하지만 여전히 예전 기술, 간단한 자바스크립트, 간단한 자바, 자바7도 잘 안 쓰는 데, 자바8에 람다? 이런 건 생각도 하지 않고 있다. 그래도 요즘 Devops = Development + Operation (개발 + 운영), cloud, MSA (Micro Service Architecture), 이런 단어를 계속 보고 있고, 나도 한번? 해봐? 그냥 볼까? 하는 생각을 하던 중에 이 책이 들어왔다.
여전히 대략 개념만 아는 나에게는 어려운 책이다. 그래도 책을 보면 친절하게 설명하려고 하는 노력이 보인다. 그래도 어려운 건 어려운 것일 뿐인 듯... 초반에 react에 대한 개념을 설명하고, 사용법, 도구 사용법, 테스트하는 법 등 많은 것을 담은 책이다. 아직은 어렵지만, 다시 보면 그래도 좀 적응이 될 만한 책이다. 결론은 좋은 책이지만, 아직 나에게는 어려운 책인 듯.
자바스크립트에 대해서 많이 사용해 본 사람이라면 금방 적응할 듯하다. 뭐든지 개념 잡기가 어렵지만, 꾸준히 연습해 본다면 이 책은 훌륭한 지침서가 될 듯하다. |
|
안녕하세요. 오늘은 처음 시작하는 리액트 (UI를 위한 자바스크립트 라이브러리 React JS) 책을 리뷰해보고자 합니다. 본 도서는 한빛미디어 나는 리뷰어다 프로그램을 통해 책을 협찬받아 리뷰를 진행하였습니다. 하지만 먼저 말씀드릴 것은 책을 협찬 받았다고 해서 무조건적인 칭찬 일색 리뷰는 진행하지 않을 것을 미리 말씀드립니다. :) 블로그 글을 읽는 분들의 도움이 되도록 노력하겠습니다~ 책 표지는 이렇게 생겼습니다. 인쇄된 책이 아닌 이미지를 이렇게 보여드리는 이유는! ebook이기 때문입니다 :) 저 역시 진짜 책일줄 알고 두근두근 했는데 받은 책이 ebook이라 조금 당황..ㅎㅎㅎ 하지만 내용이 그렇다고 부실하거나 그런건 아니니 걱정은 하지 않습니다. 우선 책을 읽으며 주의해야 할 점은 이 책은 "React를 처음 시작하는 사람을 위한 책이 아니"라는 점을 먼저 말씀드리고자 합니다. 처음 시작하는 사람을 위한 책은 맞지만, 리액트의 가장 기본 basic한 내용은 알고 있고, 이후 UI 설계 및 구현을 처음 시작하는 사람을 위한 도서라는 점입니다. 실제 책의 역자 서문에서도 간단한 설명과 튜토리얼은 React의 공식 문서를 참조할 것을 권장하고 있습니다. 즉, 완전 초짜를 위한 리액트 책은 아니라는 말입니다. 저도 리액트가 익숙하지는 않기 때문에 미리 리액트 튜토리얼을 경험해보고 이 책을 읽어보았습니다. 우선 책의 시작은 리액트가 간단하게 어떻게 다른지에 대하여 먼저 서술하고 있습니다. 처음 HTML이 나왔을 때에는 그저 페이지 내에 텍스트 + 다른 페이지로 넘어가는 링크만 있었다가, 동적인 페이지를 위해서 Javascript가 추가 되었고, 이후 JS의 여러 라이브러리가 추가 되었고, React도 그 라이브러리의 종류 중 하나 입니다. 다만, 기존의 JS가 DOM을 전부 리로드 한다는 개념이라면, React는 이와 다르게 미리 가상의 DOM을 만들어 놓고 실제 페이지에 로드되는 DOM과 교체하는 순서로 진행이 됩니다. 크.. 이렇게 만들어주시니.. ㅎ 책의 구성은 이러한 React에 대한 개괄적인 설명을 포함하고 있고, 이후 근간인 JSX에 대한 의미적 설명 + 간단한 예제를 포함하고 있습니다. 책은 전체적으로 설문조사 생성기를 예제로 하여 챕터마다 해당 개념을 설명하고 애플리케이션에서 해당 개념을 다루는 부분을 코드를 통해서 살펴봅니다. ebook으로는 처음 리뷰를 진행해보니 책을 읽는 것부터 전체적으로 집중이 안되는 느낌이었습니다. 글자를 화면으로 보다보니 바로바로 테스트하는 것에는 편했지만, 책의 내용이 실제 내부의 컨텐츠와 무관하게 낙낙하지 않다는 느낌이었습니다. (책은 역시 실제 종이로 인쇄된 것을 보아야..) 책의 지면을 아끼기 위해서 코드를 전체적으로 조금씩 생략을 하였는데, 개인적으로는 코드의 양을 조금 더 추가해서 앞뒤의 컨텍스트를 조금 더 이해할 수 있도록 하는 것이 어땟을까 하는 아쉬움이 남습니다. 이외에는 전반적으로 개념 설명과 코드 예제가 바로바로 나와서 보기가 편했습니다. (하지만 역시 ebook보다는 실제 책이..) 오늘 리뷰는 여기서 마치도록 하겠습니다 :) 다음에 또봐요~ 안녕~ |
|
"처음 시작하는 리액트"는 한빛미디어에서 출간한 리얼타임 도서이다. React는 Factbook이 사용하는 PHP프레임워크인 XHP를 대체하기 위해 시작되었다. PHP프레임워크인 XHP는 새로운 요청이 들어 올 때마다 전체 페이지를 렌더링한다. 이작업을 클라이언트에서 처리하기 위해 React가 탄생했다. 리액트는 페이스북에서 개발한 자바스크리트 라이브러리이다. 그렇다고 리액트가 jQuery처럼 웹개발의 편의를 위해 만들어진 자바스크립트 라이브러리가 아닌 BackboneJS와 AngularJS와 같이 웹 애플리케이션 개발을 목적으로 만들어진 웹프레임워크이다. 본 도서에서는 리액트에 대한 소개부터 JSX를 사용해서 컴포넌트를 만드는 방법부터 리액트 내부에서 데이터 흐름에 대해 살펴보고 리액트의 속성(props)와 상태(state)를 구분해서 컴포넌트 개발 시에 이 둘을 제대로 사용할 수 있는 방법을 익힐 수 있다. 그리고 리액트의 이벤트 처리 방법과 여러 리액트 컴포넌트가 사용하는 공통 기능을 공유하는 방법인 믹스인 사용방법에 대해서 설명하고 있다. 8장부터 13장까지는 앞에서 배워본 리액트 사용방법을 가지고 더 훌륭한 리액트 컴포넌트를 만들어 본다. 이를 위해 리액트에서 DOM에 접근하는 방법과 폼 요소 다루는 방법, 그리고 CSS 애니메이션을 처리하는 방법을 설명하고 있다. 그리고 앞선 만든 컴포넌트의 성능개선할 부분과 브라우저에서 재 렌더링하는 것을 방지 하여 애플리케이션의 속도를 높이는 방법에 대해 알아본다. 12장에서는 서버사이트 랜더링 방식을 살펴보고 서버와 클라이언트 렌더링 방식을 함께 적용하는 전략을 설명하고 있다. 14장에서는 개발자 도구를 설명하고 있는데 다른 프로그래밍 도서는 보통 시작부분에 설치환경과 개발도구들을 설명하는것과는 달리 책의 후반부에 개발도구와 개발 환경에 대해서 설명하고 있다. 15장에서는 테스트방법에 기술하고 있는데 책의 여러 장들중에 가장 많은 분량을 차지하고 있다. 마지막 16장과 17장은 리액트를 활용하는 방법으로 여러 사례를 예시로 들고 있고 있다. "처음시작하는 리액트"는 번역도서이긴 하지만 번역이 잘 되어 있어서 기술 내용이 어색하지 않았고, 오탈자도 보이지 않아 리얼타입도서이지만 상당히 편집이 잘 되어 있다고 느껴졌다. 다만 아쉬운 점은 "처음시작하는 리액트"는 나와 같이 처음 리액트를 접하고 시작하는 이에게는 다소 어렵게 느껴졌다. 예제도 프로그램 전반에 관한 소스가 아닌 설명하고자 하는 부분만 기술하고 있어서 책 중간중간에 언급하고 있는 설문조사 생성기의 전체 소스코드를 살펴보지 않고는 실제 동작된는것을 확인할 수 없었다. "처음시작하는 리액트"는 리액트를 사용해본 경험자가 리액트를 활용하는 방법이나 체계적인 이론을 잡기에 적합할 것 같다. 물론 그렇다고 중, 고급 대상자로 만들어진 책은 아니지만 그래도 리액트를 한두번 접해본 이들에게 더 활용도가 높은 책임에는 틀림없다. 마지막으로 가장 아쉬웠던 점은 책 출간이 2016년 8월이지만 원서는 2014년에 출간된거라 책에서 사용하고 있는 리액트 버전과 2017년 5월 기준으로 버전과 다소 차이가 있다. 참고 : 책에서 사용하고 있는 리액트 버전은 0.12버전이다. 현재 리엑트 버전은 15.5.4(2017.4.11)이다. "처음시작하는 리액트"는 번역서로 완성도가 높은 도서임에 틀림이 없다. 대상은 리액트를 처음 접한 개발자보다는 리액트를 빌드해본 경험이 있는 개발자에게 더 적합해 보인다. 아쉬운 점은 책에서 사용하고 있는 리액트 버전이 현버전과 다소 차이가 있어서 변경된 명세가 있을 수 있음을 참고해야 한다. 리얼타임도서의 의도에 맞게 최신버전으로 수정되었으면 하는 바램이 있다. |
![]() 요즘 개발자들 사이에서 대세로 떠오른다고 해도 과언이 아닌 자바스크립트. 그중 UI를 동적으로 빠르게 생성하기 위해 태어난 리액트. 이 책은 리액트라 하는 자바스크립트 UI 라이브러리를 아직 접해보지 못한 사람들을 대상으로 리액트에 관해 많은 내용을 설명한다. 초급과 중급을 대상으로 한 덕분에 처음부터 코드 설명보다는 리액트가 태어난 배경과 함께, 리액트를 어떤 면에서 어떻게 사용하면 좋을지에 대해 상세히 다루고 있다. 책의 전반에는 리액트를 사용하는 방법을 주로 다루고 있다면, 책의 중 후반부터는 자바스크립트로 개발하는 방법론과 함께 디버깅 및 브라우저에 의존하지 않는 테스트 방법 등까지 라이브러리 별로 깊지는 않지만 광범위하게 저자가 가지고 있는 자바스크립트 개발에 대해 노하우를 제공한다. 수많은 자바스크립트 라이브러리 중에 어떤 것을 선택해서 개발하느냐에 따라서 많은 차이가 있을 텐데, 이 책 한권 으로 기본은 가져갈 수 있는 셈이다. 리액트를 사용하는 데 익숙지 않은 초보와 중급자들을 배려하여 꼭 필요한 내용을 적절한 깊이의 내용으로 꽉 채워, 자바스크립트로 개발하는 것에 대해 익숙지 않은 사람들에게 많은 도움이 될 것으로 생각한다. 마지막으로 부록에는 빠르게 업데이트되는 리액트에 맞춰 책이 쓰일 당시와 현재의 리액트가 어떻게 다른지에 대해서도 충분한 설명과 함께 내용을 할애하고 있어 개론서의 역할도 일부 해줄 수 있다고 생각이 든다. 한 가지 아쉬운 점이라면 책 중간 소스코드를 비교하는 부분이 있는데, 해당 부분에 하이라이트 처리가 되어 있었다면, 좀 더 독자를 위한 책이 되지 않았을까 생각한다. |
|
서문에서 나와있듯이 내부 로직보다는 UI적인 측면이 강한 책이라고 볼 수 있다. 완전한 정독은 시간이 걸릴 꺼 같아서 간략하게 아는부분을 읽어보았는데 (저같이 책읽는 속도가 느린사람은 제시간에 리뷰 작성 못합니다.ㅋㅋㅋ) 책의 제목에는 처음 시작하는 이라고 되있지만 리액트를 한번이라도 들어본 사람이 읽기에 좋은책이라고 느껴진 부분이 많이 있다. 번역서 치고는 생각보다 이상하게 기술되있는 부분을 찾기 힘들었고 중간중간에 이미지를 삽입하여 독자들의 이해를 도운 부분도 있다. 전체적으로 정리를 해보면 아예 리액트를 들어본적이 없는 사람은 이해하기가 조금 난해할 수 있지만 열심히 찾아보면서 하실분들은 추천드립니다. 하지만 이 책 한권으로 리액트를 이해하겠다는 약간 힘들어요. 디자인이나 내용 구성은 괜찮았습니다. 마지막으로 다른사람들도 많이 얘기하지만 책이 나온지 꽤 됬지만 최신버전이 아니라는 점이 아쉽다. 하지만 뒤에 부록에 친절하게 바뀐 부분의 내용이 수록되있습니다! |
|
처음 웹 프로그래밍을 할 때 PHP를 보기시작해서 ASP, JSP등을 가볍게 스쳐 지나갔다 최근 Node.js를 사용한 웹 프로그래밍에 관심을 가지고 있다보니 서버프로그래밍이 가장 중요 관심사긴 하지만 웹 프론트엔드 프로그래밍도 관과할 수 없어 AngularJS를 보고 있다 "처음시작하는 리엑트"을 보게 되었다. React를 시작하기 전에 AngularJS와 뭐가 다르지? 라는 의문에 찾아보았다. AngularJS를 Front End Platform(MVC)이라고 한다면 ReactJS는 FronEnd Library(V)로 이 둘을 비교하는 것은 그다지 의미없는 일인듯 하다. 각자의 역할이 다르니까~~!! AngularJS와 ReactJS에 관심이 있는 개발자라면 VueJS도 관심을 가지고 찾아 보길 바란다. 이책은 다른 사람들도 마찬가지겠지만 책을 처음 펼치면서 좀 당황스럽다고 표현해야 할 것이다. 이책의 역자가 "이책은 초보자를 위한 책이 아니다"라고 말하고 있기 때문이다. 영문으로 "Developing a React Edge - The JavaScript Library for User Interface"가 어떻게 이런 제목이 될 수 있었는지 궁금하지만 책 제목에 나와있듯이 React 개발서로는 새로운 기술을 소개하는 책으로는 괜찮은 책이다. 책 순서를 보면 1. React 소개 2. JSX 3. 컴포넌트 라이프사이클 4. 데이터 흐름 5. 이벤트 처리 6. 컴포넌트 구성 7. 믹스인 8. DOM 조작 9. 폼 10. 애니메이션 11. 성능 개선 12. 서버사이드 렌더링 13. React 패밀리 14. 개발 도구 15 .테스트 16 .설계 패턴 17 .그밖의 사용법 18 .부록: 릴리스로그 으로 각장에 대한 간단한 설명은 여기 샘플로 제공하는 책에서 확인할 수 있다. 책을 선택할 때 가장 기본적인 판단은 가능하지 않을까 싶다. 먼저 책을 읽다보면 버전에 대해 궁금해 진다. 이책을 번역할 때 최신 버전이 0.14라고 하면 정식 릴리즈도 못한 미숙한 라이브러리가 아닐까? 궁금해서 리액트 페이스북 사이트에 가보니 (https://facebook.github.io/react/) 현재 버전이 15.6.1이라고 되어 있다. 갑자기 버전 15라니 이상학 갑자기 버전업되어 있어 찾아보니 이전버전이 0.14.x 버전이라고 한다. 개발자의 버저닝 방식이 갑자기 바뀐 모양이다. 그러니 버전에 대해서는 신경 쓰지 않아도 된다. ![]() 1장을 읽으면서 조금은 좌절했다. 난 리액트 초보자인데 이책 읽을 수 있을까? 2장 JSX를 읽으면서 이런 형태의 탬플릿은 너무 간단해서 어색하지만 익숙해지면 너무 편할 것 같이 보였다. 처음 접하는 부분이라 조금은 생소한 개념이었다. 3장은 라이프사이클에 대한 내용이었는데 초기화, 실행, 해제/정리단계로 어느 시점에 어떤 것들을 사용할 수 있는지 설명하는 부분이었다. 조금 더 명확한 설명을 해줄 다양한 예제가 있었다면 하는 아쉬움이 남았다. 4장부터 13장까지 3장에서와 같이 초보자 책이 아닌 만큼 대부분의 장에서 필요한 최소한의 설명과 간단한 예제만 제시하고 있어 자세히 이해하는데는 어려움이 있었다. 14장의 개발도구는 Browserify, Webpack에 대해 설명하고 있다. 간단히 React와 함께 설치하여 사용하는 방법이 나와있다. 14장까지 전체 322페이지 중에 180페이지 가량의 내용이 들어있다보니 초보자를 위해 자세한 설명을 해주긴 어려웠을 것이라고 보이지만 기본을 알고 보는 사람은 지루하지 않았다고 생각할수도 있지 않을까 싶었다. (참고로 나는 초보자다) 15장 ~ 17장이 실제 코딩시 필요한 사항들을 설명하고 있다 보니 전체 책 분량의 1/3이상을 차지 하고 있다. (릴리스 로그를 제외하면) 전체적으로 코디을 해보고 확인해볼 수 있는 유일한 부분이다. 18장 부록. 릴리스로그는 리액트를 이해하는데 필요한 리액트의 이력을 확인할 수 있다. 대부분의 개발자들은 이런 이력을 좋아한다. 그것은 그 개발 언어나 도구의 철학을 이해할 수 있고 철학을 잘 이해해야만 잘 사용할 수 있기 때문이다. 전체적으로 보면 초보인 나에겐 좀 많이 어렵게 다가온 책이다. 중급자/고급자가 보면? 초보인 내가 판단하기 힘들것 같다. 더군다나 종이책을 선호하는 나에게 전자책이라니 (리뷰를 쓰기 위해 읽고 있지만) 역시 익숙하지 않아 읽는데 어려움이 많았다. 일반적인 서적이 그렇듯이 이책도 리액트라는 것에 대해 전체적이 내용을 다 담으려고 하면서 분량은 할애하지 않아 아쉬움이 많이 남고, 철학을 이해하는 이력을 담는데 책 분량을 많이 할당한 것에 대해서는 (영문으로된 사이트에 들어가 이해하지 않아도 된다는 점에서) 좋았다. 초보자에겐 비추천. 중/고급자에게 링크에 걸어둔 각 장의 요약을 보고 판단해서 보기 바란다. |