빠른 모바일 앱 개발을 위한 『React Native(리액트 네이티브) 2/E』

 

 

모바일 앱 개발의 새로운 패러다임, 리액트 네이티브
페이스북이 공개한 리액트는 자바스크립트로 작성되었고 웹 UI를 만들기 위해 태어났지만 웹이라는 틀 안에서만 동작하는 라이브러리가 아니라는 점이 가장 큰 매력인 듯합니다. 웹이라는 틀을 깨고 나온 첫 번째 결과물이 바로 네이티브 모바일 앱을 만드는 리액트 네이티브입니다. 리액트 네이티브는 HTML, CSS로 화면을 그리는 방식이 아닌 자바스크립트로 작성하고 브리지(bridge)를 통해 네이티브 코드를 동작시키는 진짜 네이티브 앱을 만들 수 있습니다.

자바스크립트로 잘 짜인 진짜 네이티브 앱
이 책 『React Native(리액트 네이티브) 2/E』은 iOS와 안드로이드에서 동작하는 모바일 앱 개발에 관한 가이드입니다. 자바스크립트와 리액트(React)를 활용하여 iOS 및 안드로이드에서 동작하고 진짜 네이티브로 렌더링되는 모바일 애플리케이션을, 기능적인 제약 없이 만들고 배포할 수 있게 도와줍니다.

예제 코드를 따라하며 네이티브 UI 구현
또한 카메라와 사용자 위치, 로컬 저장소 등 플랫폼에서 제공하는 기능을 리액트 네이티브에서 사용하는 방법, 인터페이스를 만들고 꾸미는 방법, 모바일 컴포넌트를 사용하는 방법, 디버깅을 위한 도구와 배포하는 방법 등을 예제 코드를 보여주면서 설명하고 있어 단계적으로 배울 수 있습니다. 서드파티 라이브러리나 자바, 오브젝티브-C 라이브러리를 활용하여 리액트 네이티브를 확장하는 방법도 다루고 있습니다.

발 빠른 업데이트 개정판!
현재 트위터에서 소프트웨어 엔지니어로 일하고 있는 저자 바니 아이젠먼(Bonnie Eisenman)은 1판에 이어 개정판인 이 책에서도, 빠르게 성숙해온 리액트 네이티브의 변화에 맞춰 재구성했습니다. 특히 리액트 네이티브와 함께 많이 사용되는 리덕스(redux)와 리액트 내비게이션(react-navigation)을 이용하여 하나의 완성된 리액트 네이티브 앱을 만들어가는 내용을 새롭게 추가했습니다. 또한 역자 이종은 님께서 0.55 버전을 기준으로 주석을 달아 주셨습니다.

이 책에서 다루는 내용입니다.

  • 리액트 네이티브에서 네이티브 UI 컴포넌트를 사용하는 인터페이스를 제공하는 원리
  • HTML 엘리먼트와 닮은 네이티브 컴포넌트 사용하기
  • 자신만의 리액트 컴포넌트 및 애플리케이션을 생성하고 스타일 적용하기
  • 리액트 네이티브가 지원하지 않는 API와 기능을 사용하기 위한 서드파티 모듈 설치하기
  • 특정 플랫폼만 지원하는 컴포넌트를 크로스 플랫폼 애플리케이션에서 사용하기
  • 리액트 네이티브 개발의 어려운 점과 이를 해결하기 위한 도구
  • 대규모 애플리케이션에서 짜임새 있는 UX를 구성하고 리덕스 라이브러리를 이용해 state 관리하기
  • iOS 앱 스토어와 구글 플레이 스토어에 배포하기

이 책을 추천하신 분들의 이야기입니다.

빠른 모바일 앱 개발을 위한 책
웹 개발자로 리액트를 처음 접했을 때 마치 오래전 루비 온 레일스를 처음 만났을 때와 비슷한 감흥을 받았다. 익숙한 것들을 무참히 깨뜨리고 새로 쌓아 올린 혁신적인 생각들이 리액트와 리액트 네이티브에 고스란히 녹아 있다. 이 책은 그런 리액트 네이티브의 멋진 아이디어를 가장 잘 전달해 주는 ‘리액티브(reactive)’한 책이라 말하고 싶다.
— 김석준, 유스풀패러다임 대표, 『레일스와 함께하는 애자일 웹 개발 1판』 역자

네이티브 모바일 앱 개발 안내서
자바스크립트는 지금 제2의 부흥기를 맞이하고 있다. 웹을 위한 간이 언어로 만족해온 유년기를 벗어나, 클라우드에서 IoT까지 본격적인 활약을 펼치고 있다. 그중 리액트 네이티브는 종래의 상식을 깨는 기발한 접근법으로 프로급 앱 개발마저 가능하게 했다. iOS와 안드로이드를 동시 지원할 뿐 아니라, 최근에는 Mac OS나 윈도우 쪽 개발도 가능해지는 등 생태계가 급팽창 중이다. 리액트 네이티브는 최신 자바스크립트 ES6/7과도 궁합이 좋은 리액트의 파생 버전인 만큼 이 책을 통해 제대로 배워두면 금상첨화일 것이다. 또한 자바스크립트로 네이티브 앱을 오랜 기간 개발해온 역자의 친절한 검토와 번역이 돋보이는 책이다.
– 김국현, 에디토이 리서치 스튜디오 대표

iOS 및 안드로이드 앱 개발에서 컴포넌트 사용법, 디버깅, 앱 스토어 등록까지 뚝딱!
리액트 네이티브는 모바일 앱 개발의 새로운 패러다임이다. 페이스북, 트위터, 넷플릭스, 에어비앤비, 세일즈포스 등 이미 수백 개 회사를 통해 검증된 리액트 기술에 기반을 둔 리액트 네이티브는 웹 페이지를 만드는 것만큼이나 간단하게 모바일 앱을 뚝딱 만들수 있게 해주는 모바일 앱 개발 프레임워크이다. 발표된 지 1년여 만에 깃허브의 인기 오픈 소스 라이브러리 10위권에 오른 리액트 네이티브의 가장 큰 장점은 빠른 개발 속도, 멋진 ‘개발자 경험’, 그리고 진짜 네이티브 UI의 구현이다.
자바스크립트와 리액트에 대한 기본 지식을 갖추고 있다면, 이 책을 통해 iOS 및 안드로이드 앱 개발, 주요 컴포넌트들의 사용법, 디버깅, 그리고 앱스토어 등록까지 모바일 앱 개발의 전체 사이클을 쉽게 따라 익힐 수 있을 것이다.
– 황대산, (주)어떤사람들 CEO

모바일 앱 개발을 시작하려는 프론트엔드 소프트웨어 엔지니어나 웹 개발자라면 모바일 앱 개발의 새로운 패러다임인 리액트 네이티브를 놓치지 마시길 바랍니다. 『React Native(리액트 네이티브) 2/E』은 다음 서점에서 구입하실 수 있습니다. 🙂

Yes24 | 교보문고 | 알라딘 | 인터파크

전자공학 만능 레시피: 아두이노, 라즈베리 파이를 요리하는 21가지 레시피

“전자공학을 전문적으로 공부하지 않은 탓에

저항을 계산하고 장치를 연결할 때마다 문턱을 느낀다.”

 

“아두이노 기초는 다 익혔는데, 머릿속에 생각한 프로젝트를 만들려면

스위치도 연결하고 저항 센서도 사용해야 하는데

구체적으로 그 과정과 주의할 점이 무엇인지 모르겠다.”

 

“어찌어찌 아두이노와 라즈베리 파이를 이용해 프로젝트를 만들었는데,

더 확장하거나 전원 공급 장치를 바꾸고 싶은데 막막하다.”

.

.

.

“그래, 바로 이런 책이 필요했어!”

 

전자공학 만능 레시피’ 등장!

전자공학을 이용해 무언가를 만들 때 꼭 필요한 옴의 법칙, 전력에 관한 법칙부터 아두이노, 라즈베리 파이를 활용한 프로젝트를 만들 때 누구나 부딪힐 수 있는 부품 활용법, 마이크로컨트롤러와 관련된 주변 이야기까지 담았습니다. 이 책은 전자공학의 기본까지는 알겠지만 더 심화된 과정으로 넘어가고자 하는 메이커들을 위한 책입니다. 기본 원리를 안다고 해도 새로운 부품을 내가 원하는 방식으로 결합시키고 동작하도록 만들려면 여러 가지 계산이 필요하고 부품의 특성도 제대로 파악해야 하지요.

 

“저자가 말하는 것처럼 이 책에는 기본적인 내용과 심화된 내용을 적당히 다루면서도, 그 사이에서 흔히 간과하기 쉬운 내용들을 꼼꼼하게 다루고 있다. 많은 내용을 다루다 보니 설명이 부족해 보일 때도 있지만, 프로젝트를 만드는 과정에서 문제가 생겼을 때 해결의 실마리를 얻기에는 충분하다.”

  • 이하영 님이 쓴 ‘옮긴이의 글’ 중에서

 

이 책은 『라즈베리 파이 프로그래밍』 『아두이노 프로그래밍』 『33가지 프로젝트로 배우는 아두이노』 등 메이커를 위한 전자공학 책을 꾸준히 집필해온 사이먼 몽크가 집필했다는 점에서 메이커들의 가려운 구석을 시원하게 긁어 주리라는 것은 예상할 수 있었습니다. 게다가 공신력을 인증 받은 오라일리 쿡북 방식에 따라 전자공학 활용법을 세분화했다는 점도 책의 신뢰도를 높이는 포인트입니다.

 

각 장의 구성은 항상 [문제-해결책-논의 사항-참고 사항]으로

 

특히 사이먼 몽크는 전자공학 분야 집필서의 대가답게 실습을 하다가 마주칠 수 있는 문제점을 미리 예측하고 그에 대한 해결법도 제시하고 있습니다. 특히 모든 장은 [문제-해결책-논의 사항-참고 사항]으로 구성되어 있는데요, 메이커가 맞닥뜨렸을 문제가 무엇일지 제시하고 그에 대한 해결책을 자세히 설명합니다. 그리고 그에 따른 논의 사항을 소개하면서 전력을 계산하거나 해결책을 따를 때의 변수 등에 대해 꼼꼼히 체크합니다. 마지막으로 참고 사항에서는 더 알아두면 좋은 정보나 참고할 만한 사이트 등을 추가로 적어놓았습니다. 부품 리스트, 아두이노와 라즈베리 파이의 핀 배열, 단위와 접두어를 정리해 놓은 부록까지 살펴보면 책 곳곳에서 세심함이 느껴진다는 것을 깨달을 수 있습니다.

 

요리를 하듯 계속 도전하세요

초보자 딱지는 뗐지만 아직은 혼자서 그럴 듯한 요리를 할 수 없다면 레시피를 보며 계속 시도해 보는 수밖에는 없겠지요. 이 책은 한 번 보고 마는 책이 아니라 요리를 익힐 때처럼 곁에 두고 ‘보고 또 보면서’ 참고할 수 있는 쿡북입니다.

처음에는 이것 저것 확인하고 찾아보다 보니 시간도 많이 걸리고 포기하고 싶을 때도 있을 겁니다. 하지만 하나씩, 하나씩 책의 내용을 응용한 프로젝트를 완성해 가다 보면 자신감이 붙지 않을까요? 여러 번 펼쳐보느라 책이 꽤 낡아질 때쯤이면 고급 요리에 도전해야겠다고 결심하는 자신을 발견할지도 모르지요.

 

다음은 각 장에서 다루는 내용들입니다.

 

레시피 맛보기

1, 이론. 제목에서 알 수 있듯이 1장의 레시피에서는 옴의 법칙이나 전력에 관한 법칙 등 피해갈 수 없는 이론적인 개념들을 설명한다.

 2, 저항. 가장 기본이 되는 전자부품인 저항과 그 사용법을 설명하는 레시피가 담겨 있다.

 3, 커패시터와 인덕터. 이 장에서는 커패시터와 인덕터의 원리, 구별 방법을 설명하는 레시피와 이들의 사용 방법을 담은 레시피를 소개한다.

 4, 다이오드. 4장에는 다이오드에 대한 설명과 제너 다이오드, 포토다이오드, LED 등 다양한 유형의 다이오드 사용법을 안내하는 레시피가 수록되어 있다.

 5, 트랜지스터와 집적회로. 5장에서는 트랜지스터 사용을 위한 기본적인 레시피와 여러 설정 환경에서 다양한 유형의 트랜지스터를 사용하기 위한 지침을 주로 다룬다. IC(integrated circuits, 집적회로)도 소개하지만, IC에 관한 각 레시피는 이 책 전반에 나뉘어 수록되어 있다.

 6, 스위치와 릴레이. 기본 레시피 섹션의 마지막은 흔히 사용되지만 간과하기 쉬운 스위치와 릴레이를 살펴보는 것으로 마무리한다.

7장, 전원 공급 장치. 어떤 프로젝트라도 전원 공급 장치는 필요하다. 이 장의 레시피에서는 기존에 사용되던 전원 공급 장치의 설계뿐 아니라 스위치 모드 전원 공급 장치(switched-mode power supply, SMPS)와 드물게 사용되는 고전압 전원 공급 장치도 소개한다.

8장, 배터리. 8장에서는 배터리 선택을 위한 레시피 외에, 충전식 배터리(LiPo 배터리 포함)와 자동 백업을 위한 실용적인 회로를 선택하는 레시피도 소개한다.

9장, 태양열 발전. 9장에서는 태양 전지판을 사용해서 프로젝트에 전력을 공급하고자 할 때 참고할 수 있는 레시피를 소개한다. 또한, 태양열 발전을 사용해서 아두이노와 라즈베리파이에 전원을 공급하는 데 도움이 되는 레시피도 담겨 있다.

10장, 아두이노와 라즈베리파이. 오늘날 대부분의 메이커 프로젝트에는 아두이노나 라즈베리파이 같은 연산 장치가 사용된다. 이들 보드는 외부 부품을 제어하는 용도로 해당 보드를 사용하는 레시피와 함께 소개한다.

11장, 스위칭. 이 장에서는 스위칭을 ‘스위치’와 혼동하지 않도록 아두이노나 라즈베리파이에서 트랜지스터, 전자기계식 릴레이, 무접점식 고체 릴레이(solid-state relay)를 사용해 장치를 켜고 끄는 법을 보여주는 레시피를 살펴본다.

12장, 센서. 12장에는 센서의 다양한 유형과 센서를 아두이노와 라즈베리파이 양쪽에서 사용하는 레시피가 담겨 있다.

13장, 모터. 13장에서는 다양한 유형의 모터(DC 모터, 스테퍼 모터, 서보 모터)를 아두이노와 라즈베리파이 양쪽에서 사용할 때 참고할 수 있는 레시피가 수록되어 있다. 이 외에도 모터의 속도와 방향을 제어하기 위한 레시피도 소개한다.

14장, LED와 디스플레이. 이 장에서는 아두이노나 라즈베리파이에서 표준 LED를 제어하기 위한 레시피 외에 고전력 LED나 OLED 그래픽 디스플레이, 주소 지정 가능 LED 스트립(네오픽셀), LCD 디스플레이와 같은 다양한 유형의 디스플레이의 사용법을 다룬 레시피를 소개한다.

15장, 디지털 IC. 15장에는 디지털 IC를 사용하는 레시피가 수록되어 있다. 마이크로컨트롤러가 등장했지만 디지털 IC는 지금도 프로젝트에서 유용하게 사용될 수 있다.

16장, 아날로그. 이 장에는 단순한 필터링부터 발진기와 타이머에 이르기까지 유용한 아날로그 설계 방식을 다양하게 소개하는 레시피가 수록되어 있다.

17장, op 앰프. 이 장에서는 아날로그라는 주제를 계속 이어나가 간단한 증폭에서부터 필터 설계, 버퍼링, 비교기 활용에 이르는 다양한 작업에 op 앰프를 사용하는 레시피를 소개한다.

18장, 오디오. 18장에는 아날로그와 디지털 전력 증폭기 설계 외에 아두이노와 라즈베리파이에서 사운드를 생성하고 마이크에서 입력된 신호를 증폭하는 레시피가 수록되어 있다.

19장, 무선 주파수. 이 장에서는 FM 송신기와 수신기를 사용하는 레시피와 아두이노에서 다른 아두이노로 패킷 데이터를 전송하는 레시피를 소개한다.

20장, 제작. 이 장에는 ‘납땜을 하지 않는’ 시험용 모델을 제작하고, 이들을 남땜해서 좀 더 오래 사용할 수 있는 프로젝트로 만드는 데 필요한 레시피를 수록했다. 이 외에도 스루홀과 표면 실장형 장치를 납땜하기 위한 레시피도 소개한다.

21장, 도구. 작업대용 전원 공급 장치, 멀티미터, 오실로스코프의 사용법과 시뮬레이션 소프트웨어의 사용법을 정리해 소개한다.

 

이 책은 다음 서점에서 구입하실 수 있습니다.

알라딘 | 교보문고 | Yes24 | 인터파크