beholde***
2022-11-27

이 책은 바로 프로젝트를 시작하면서 리액트 네이티브를 학습할 수 있도록 구성되어 있다. 계산기, ToDo리스트, 여행 사진 공유 앱 만들기 등 3가지 프로젝트를 진행하면서 필요한 리액트 네이티브 기초 내용을 익히고, 다양한 라이브러리를 사용해보며 크로스 플랫폼(iOS/안드로이드) 모바일 앱 개발 역량을 키운다.
재작년부터 개인적인 호기심으로 조금씩 개인적으로 리액트를 공부해왔다.
리액트는 공식 문서 가이드와 커뮤니티가 워낙 활성화되어 있어 처음 접하는 사람들도 쉽게 학습할 수 있다.
처음 리액트를 접했을 때 리액트 공식 문서로만 공부했던 기억이 난다.
하지만 새로운 프로임워크, 라이브러리를 접할 때와 마찬가지로 공식문서에서 기본 개념을 익히는 것만으로는 실력이 크게 향상되지 않을 것이다. 남이 짜놓은 코드를 수정할 땐 유용하겠지만...
핸즈온 리액트 네이티브는 입문자 대상으로 출판된 도서이긴하나, 기본 개념을 줄줄이 나열하기보다 실습 위주로 구성이 된 책으로 새롭게 앱을 개발해야한다는 분들에게 조금 더 유용한 책이라는 생각이 든다.
이 책은 크게 2단계로 구성되어 있다.
챕터 1에서는 개발 환경 준비, 리액트 네이티브 생성하는 방법, 리액트에서 빼놓을 수 없는 JSX 문법에 대한 설명, 더욱 편하게 코딩할 수 있도록 도와주는 확장 프로그램들을 설명한다.
챕터 2부터부터 챕터 10까지 즉 마지막 챕터까지 실습 프로젝트만으로 구성이 되어있다.
실습 프로젝트에는 총 3종류가 진행되며, 내용은 아래와 같다.
이 책이 대략 900페이지인데 챕터 1이 100페이지정도이고, 나머지 800페이지 분량이 실습 프로젝트이다.
방대한 양의 실습을 해보면서 그만큼 다양한 기능들을 구현해 볼 수 있겠구나 생각하면 될 것 같다.
먼저 실습으로 더하기, 빼기만 있는 계산기 앱을 만들어볼 수 있다.
이 장을 통해 리엑트에서 가장 중요한 개념인 컴포넌트에 대해 배우게 되며, 기능 구현과 함께 스타일까지 적용해보게 된다.
해당 실습에서는 값을 입력받고 조회, 삭제, 완료 처리하는 기능이 있는 ToDo 리스트 앱을 만들어 볼 수 있다.
리액트 네이티브에서 제공되는 컴포넌트 중 Image 컴포넌트, TextInput 컴포넌트, KeyboardAvoidingView 컴포넌트 등을 프로젝트에 포함하고 사용하는 방법을 배우게 된다.
마지막 실습 프로젝트는 사진 공유 앱 만들기이다.
이 챕터에서는 여러장의 사진을을 업로드할 수 있고, 위치도 지정할 수 있는 앱을 만들어볼 수 있다.
위치 지정 같은 경우 Google Places API를 사용해 구현하기 때문에 OpenAPI를 사용하는 경험을 하게 된다.
또한 회원가입 화면, 로그인 화면 등 인증 화면을 구현하고 인증, 데이터베이스 등 다양한 기능을 제공하는 개발플랫폼인 Firebase를 사용해 실제 서버를 통해 회원가입과 로그인 기능을 구현해본다.
또한 이미지 캐싱 처리의 필요성 및 캐싱을 처리하는 방법을 알려주면서 실무에서 중요하게 여기는 포인트들을 집어주는 것도 입문자들에게 큰 도움이 될 내용이란 생각이 든다.
이 책의 절반이 여행 사진 공유 앱 만들기 챕터인만큼 실습을 끝내고나면 입문자로 이 책을 시작했지만
마지막에는 꽤 완성도 높은 앱을 하나 만들어낼 수 있다.
이 부분이 입문자에게는 크나큰 성취감을 준다는 생각이 든다.
이 책은 900페이지가 넘는다. 이만한 분량의 IT 서적을 완독한다는 건 참으로 어려운 일일 것이다.
하지만 이 책은 개념만 줄줄이 나열한 책이 아닌 실습 위주의 책으로 계속해서 무언가를 배우고 만들어나간다는 느낌을 주어 책을 학습하는데 있어 지루함을 덜어준다.
이 책의 90% 이상이 실습 내용으로 채워진 만큼 실습이 끝나고 학습 후반부에 도달했을 때에는 꽤 완성도 높은 앱을 하나 만들어낼 수 있다고 생각한다.
책의 내용도 중요하지만, 이렇게 긴 분량의 책을 오랫동안 편하게 보기위해서 책의 구성도 중요하다.
책을 보면 본문 중간에 중요한 내용들을 형광펜처럼 색칠해 표시해주는 부분이 있다.
이러한 세심한 배려들이 입문자에게는 친절한 책으로 다가온다.
또한 챕터를 시작하기 전, 실습에서 만들게 될 앱의 구성을 위와 같이 간략하게 설명하며 시작한다.
실습을 따라하고 나서 결과를 보여주는 방식이 아닌, 이 책은 먼저 어떤 결과물을 만들어낼지 설명해주는 방식을 채택하여 본문 내용을 읽어나아갈 때도 앞에서 설명한 결과물을 염두하며 읽을 수 있었고 학습하는데 유용했다.
웹사이트 개발과 달리 모바일 앱은 일반적으로 앱 스토어, 플레이 스토어에 등록이 되어야 사용할 수 있다.
하지만 프로젝트 실습 이후 실제 어플을 deploy할 수 있는 부분에 대한 설명은 담겨있지 않아 실제 어플을 개발하고 상용화시키고자 하는 사람들에게는 살짝 아쉬운 부분이 있을 것 같다.
하지만 이 책은 입문자에게 초점이 맞춰진 책인만큼 실습 프로젝트 3개를 경험해보고, 그 안에서 그 어떤 책보다 다양한 기능들을 경험해볼 수 있다라는 점은 확실한 책이라고 말할 수 있을 것 같다.