
부제 모듈화와 TDD를 통한 에러 예방, 추적, 장애 해결 및 AI 응용 실전 노하우
저자 윤창현
출판사 비제이퍼블릭
출간/배본가능일 2026년 02월 27일
정가 35,000원
페이지 472쪽
판형 188*245
ISBN 979-11-6592-340-2 (93000)
· 국내도서 > 컴퓨터/IT > 프로그래밍 언어 > 프로그래밍일반
· 국내도서 > 컴퓨터/IT > 모바일프로그래밍 > 모바일프로그래밍일반
· 국내도서 > 컴퓨터/IT > 모바일프로그래밍 > 아이폰/아이패드
· 국내도서 > 컴퓨터/IT > 모바일프로그래밍 > 안드로이드
· 국내도서 > 컴퓨터/IT > 대학교재
· 국내도서 > 대학교재 > 컴퓨터
· 국내도서 > IT 모바일 > 모바일 프로그래밍 > 아이폰
· 국내도서 > IT 모바일 > 모바일/태블릿/SNS > 아이폰
· 국내도서 > IT 모바일 > 모바일 프로그래밍 > 안드로이드폰
· 국내도서 > IT 모바일 > 모바일/태블릿/SNS > 안드로이드폰
· 국내도서 > IT 모바일 > 프로그래밍 언어 > 프로그래밍 언어 기타
· 국내도서 > 컴퓨터/모바일 > 프로그래밍 언어 > 프로그래밍 언어 기타
· 국내도서 > 컴퓨터/모바일 > 모바일 프로그래밍 > 아이폰/아이패드
· 국내도서 > 컴퓨터/모바일 > 모바일 프로그래밍 > 안드로이드
· 국내도서 > 컴퓨터/모바일 > 프로그래밍 언어 > 프로그래밍 언어 기타
문제를 겨냥하는 확실한 방법
에러 예방 및 추적부터 AI 응용 실전 노하우까지
리액트 네이티브(React Native)는 메타(Meta)에서 개발한 크로스 플랫폼으로, 자바스크립트(JavaScript)와 리액트(React)를 통해 iOS와 안드로이드 앱을 동시에 개발할 수 있기에 매우 유용합니다. 이처럼 크로스 플랫폼을 사용하면 단일 코드베이스(single codebase)만으로 서로 다른 운영체제에 최적화된 앱을 한 번에 효율적으로 완성할 수 있습니다. 하지만 실제 앱 구동은 각 OS의 네이티브 환경에서 이루어지기 때문에 에러 메시지만으로 문제의 정확한 원인을 파악하기 어려운 경우가 발생하곤 합니다.
이 책에서는 크로스 플랫폼으로 앱을 개발할 때 에러 발생을 미리 탐지하고 예방하는 방식에 대해 알아봅니다. 휴먼 에러와 그 외의 에러를 TDD 및 린트 도구로의 자동화로 해결하고, 예상하지 못한 사용자 패턴과 시스템 오류를 센트리(Sentry)와 파이어베이스 크래시리틱스(Firebase Crashlytics)로 감지해봅니다. 또한, 비주얼 스튜디오 코드(VS Code)에서 코파일럿(Copilot)을 활용하는 방법과 제미나이(Gemini) 기반 AI 기능을 구축하는 방법은 물론 빌드 및 앱 구동 속도가 상대적으로 느린 리액트 네이티브의 성능을 비약적으로 향상하는 기법을 전달합니다.
Chapter 1 모바일 애플리케이션 개발 방법
_1.1 네이티브 애플리케이션
__1.1.1 애플리케이션의 생명주기
__1.1.2 모바일 애플리케이션의 디자인
__1.1.3 모바일 애플리케이션의 해상도
_1.2 웹 애플리케이션
_1.3 하이브리드 애플리케이션
_1.4 크로스 플랫폼 애플리케이션
__1.4.1 리액트 네이티브
__1.4.2 리액트 네이티브 코어 컴포넌트
Chapter 2 환경 설정
_2.1 홈브루 설치
_2.2 rbenv 설치
_2.3 NVM 설치
_2.4 워치맨 설치
_2.5 iOS 환경 설정
__2.5.1 엑스코드 설치
__2.5.2 코코아팟 설치
_2.6 안드로이드 환경 설정
__2.6.1 JDK 설치
__2.6.2 안드로이드 스튜디오 설치
__2.6.3 안드로이드 SDK 설치
__2.6.4 안드로이드 환경 변수 설정
_2.7 리액트 네이티브 CLI 설치
_2.8 yarn 설치
_2.9 디버깅 환경 설정
_2.10 절대 경로
Chapter 3 테스트 개발
_3.1 단위 테스트
_3.2 TDD
_3.3 제스트
__3.3.1 제스트 환경 설정
__3.3.2 테스트 코드
_3.4 디톡스 사용자 테스트 코드 만들기
__3.4.1 디톡스 환경 설정
__3.4.2 프로젝트 설정
__3.4.3 애플리케이션 구성
__3.4.4 디바이스 설정
__3.4.5 안드로이드 추가 설정
__3.4.6 build.gradle 수정
__3.4.7 안드로이드 테스트 추가
__3.4.8 암호화되지 않은 트래픽 활성화
__3.4.9 애플리케이션 빌드
Chapter 4 린트 에러 예방
_4.1 ES린트
__4.1.1 ES린트 규칙
__4.1.2 ES린트 설정 파일
__4.1.3 ES린트 공유 구성 패키지
__4.1.4 ES린트 플러그인
__4.1.5 ES린트 파서
__4.1.6 실무 활용
_4.2 프리티어
_4.3 허스키
Chapter 5 사용자 에러 추적
_5.1 센트리
__5.1.1 센트리 회원가입
__5.1.2 프로젝트 만들기
__5.1.3 센트리 SDK 설치
__5.1.4 센트리 설정
__5.1.5 센트리 SDK 옵션
__5.1.6 실무 활용
_5.2 파이어베이스 크래시리틱스
__5.2.1 파이어베이스 사용 준비
__5.2.2 iOS 설정
__5.2.3 안드로이드 설정
__5.2.4 크래시리틱스 설치
__5.2.5 실무 활용
Chapter 6 모듈화
_6.1 Props와 State
_6.2 useEffect 훅
_6.3 Custom 훅
Chapter 7 네이티브 모듈
_7.1 네이티브 모듈 만들기
__7.1.1 iOS 네이티브 모듈 만들기
__7.1.2 안드로이드 네이티브 모듈 만들기
_7.2 새로운 JSI 구조
__7.2.1 터보 모듈
__7.2.2 패브릭
__7.2.3 코드젠
_7.3 터보 네이티브 모듈
__7.3.1 자바스크립트 명세서
__7.3.2 모듈 설정
__7.3.3 네이티브 코드
__7.3.4 터보 네이티브 모듈 추가
_7.4 패브릭 네이티브 컴포넌트
__7.4.1 자바스크립트 명세서
__7.4.2 컴포넌트 설정
__7.4.3 네이티브 코드
Chapter 8 스토어 등록
_8.1 앱 스토어 등록
__8.1.1 애플 개발자 계정 생성
__8.1.2 애플 개발자 프로그램 등록
__8.1.3 iOS 인증서 설정
__8.1.4 애플 개발자 계정 연동
__8.1.5 애플리케이션 식별자 등록
__8.1.6 프로비저닝 프로파일 생성
__8.1.7 앱 스토어 커넥트
__8.1.8 애플리케이션 아이콘 설정
__8.1.9 애플리케이션 빌드 및 업로드
_8.2 구글 플레이 등록
__8.2.1 구글 플레이 개발자 계정 생성
__8.2.2 안드로이드 빌드 최적화
__8.2.3 서명 키 생성
__8.2.4 AAB 생성
__8.2.5 릴리스 빌드 확인 및 애플리케이션 등록
Chapter 9 패스트레인
_9.1 패스트레인 기능
_9.2 패스트레인 설치
__9.2.1 번들러 설치
__9.2.2 홈브루를 통한 설치
_9.3 패스트레인 환경 설정
__9.3.1 iOS 패스트레인 설정
__9.3.2 안드로이드 패스트레인 설정
부록
1 설치 셸 스크립트 만들기
2 package.json 파일에 스크립트 명령어 만들기
3 VS 코드에서 코파일럿 활용하기
4 제미나이 API를 통한 AI 기능 구축하기
5 SemVer
6 자바스크립트 엔진 종류와 요가 엔진
7 모킹, 스테이징, 프로덕션
8 디톡스 iOS 빌드 에러
9 안드로이드 app:mergeDexDebug 에러
10 안드로이드 bundleRelease 에러
11 RNSScreenStackHeaderConfig 에러
12 안드로이드에서 node 경로를 찾지 못하는 에러
13 NVM “PREFIX” 에러
14 패스트레인 에러
윤창현
윈도우 시스템 드라이버 및 서버 개발을 통해 기술적 근간을 탄탄하게 쌓은 풀스택 개발자.
3년간의 리액트 네이티브 실무 경험을 거쳐, 현재는 iOS 및 비전OS(VisionOS) 기반의 고도화된 앱 서비스를 구축하고 있습니다. 구조에 대한 이해를 바탕으로 복잡한 문제를 해결하는 트러블슈팅 기법과 실전 노하우를 전합니다.
- 이메일 ychcom0357@gmail.com
- 깃허브 github.com/Gus3446-ych
- 티스토리 ychcom.tistory.com
- 링크드인 linkedin.com/in/changhyen3446
삽질은 줄이고 속도를 높이자
반복되는 에러 패턴을 해석하는 명쾌한 한 방
1장에서는 애플리케이션의 생명주기를 알아보고 네이티브 애플리케이션, 웹 애플리케이션, 하이브리드 애플리케이션, 크로스 플랫폼 애플리케이션을 구분해봅니다.
2장에서는 리액트 네이티브 개발에 필요한 rbenv, NVM, JDK, 홈브루, 엑스코드, 코코아팟, 커맨드라인 인터페이스 등을 설치합니다.
3장에서는 단위 테스트와 TDD 관련 개념을 간단하게 학습한 후 테스트 러너(test runner), 테스트 매처(test matcher), 테스트 목(test mock)을 한 번에 제공하는 자바스크립트용 테스팅 라이브러리 제스트(Jest)를 사용해봅니다. 그리고 사용자처럼 클릭, 타이핑, 스크롤 등의 액션을 하며 오픈 소스 종단 간(E2E) UI를 점검하는 디톡스(Detox)로 테스트 코드를 작성합니다.
4장에서는 코드의 문제점을 찾고 스타일을 교정하는 ES린트(ESLint), 규칙에 맞게 줄 바꿈, 공백, 따옴표 등을 정리하는 프리티어(Prettier), 깃 훅(Git Hooks) 설정을 공유하고 자동화하는 허스키(Husky)를 직접 실습합니다.
5장에서는 실시간으로 에러를 추적하고 성능을 모니터링하는 센트리(Sentry)와 실시간 비정상 종료를 보고하는 파이어베이스 크래시리틱스(Firebase Crashlytics)을 활용해봅니다.
6장에서는 데이터가 어디서 오고, 어디에 머물며, 어떻게 전달되는가 제어하는 Props, State, 콘텍스트 API 그리고 컴포넌트가 렌더링될 때마다 특정 작업을 수행하는 useEffect 훅과 상태 관리 로직을 별도의 함수로 분리하여 재사용성을 극대화하는 Custom 훅에 대해 알아봅니다.
7장에서는 네이티브 모듈을 직접 만들어봅니다. 새로운 자바스크립트 인터페이스(JSI)인 터보 모듈, 패브릭(Fabric), 코드젠(Codegen)에 대해 살펴본 후 터보 네이티브 모듈과 패브릭 네이티브 컴포넌트를 설정해봅니다.
8장에서는 앱을 스토어에 등록하는 과정을 보여줍니다. 앱 스토어와 구글 플레이에서 계정을 생성하고 인증서 및 식별자, 서명 키 등을 설정한 후 앱 빌드를 진행합니다.
9장에서는 반복적인 빌드 및 배포 작업을 자동화하여 에러를 방지하는 패스트레인(Fastlane)에 대해 알아봅니다. 패스트레인을 설치하고 iOS 및 안드로이드 설정을 진행해봅니다.
마지막으로, 부록에서는 VS 코드에서 깃허브 코파일럿을 활용하는 방법과 제미나이 API를 통해 앱에 AI 기능을 구축하는 방법, app:mergeDexDebug, bundleRelease 등 안드로이드 에러 해결 방법과 더불어 디톡스, NVM, 각종 패스트레인 에러에 대응하는 방법에 대해 꼼꼼하게 학습합니다.
이 책이 필요한 독자
- 지속가능성과 트러블슈팅 기술을 자신만의 개발 비결로 삼고 싶은 분
- 기본과 안정성 확보 비법을 한 번에 탄탄히 하고 싶은 주니어 개발자
- 올바른 근거로 신기술을 도입하고 싶은 개발자
- 리액트 네이티브의 작동 원리와 실행 구조를 이해하고 싶은 분
- 성능 관리, 안정성 점검, 장애 대응 등 유지보수 기술을 논리적으로 파악하고 싶은 분
- 예스24: https://www.yes24.com/product/goods/179718781
- 교보문고: https://product.kyobobook.co.kr/detail/S000219306463
- 알라딘: https://www.aladin.co.kr/shop/wproduct.aspx?ItemId=386594088
| 안쪽까지 들여다보는 스프링 시큐리티 (0) | 2026.03.03 |
|---|---|
| 만들면서 배우는 파이썬 프로젝트 (1) | 2026.01.13 |
| 까망고니의 블렌더 레벨업 아카이브 with AI (1) | 2025.09.24 |
댓글 영역