React Native와 Expo 앱 개발
디자이너가 개발 지식 없이 실제 동작하는 모바일 앱을 만드는 데 가장 큰 장벽은 네이티브 앱 개발이다. Swift나 Objective-C로 iOS 앱을 만들려 하면 구조 이해도, Xcode 사용법도 쉽게 익혀지지 않는다. 반면 React Native는 문법이 HTML/JS와 비슷해 웹 개발 경험이 조금이라도 있는 디자이너가 접근하기 훨씬 쉽다. 여기에 Expo 툴체인을 더하면 앱 정보 등록, 스토어 배포용 인증서 발급 같은 복잡한 준비 과정을 자동으로 처리해주기 때문에, 코드 에디터와 터미널만으로 개발-배포 사이클을 완결할 수 있다.
디자이너가 React Native + Expo로 앱 하나를 완성하기까지의 과정은 스타트업의 제품 개발 프로세스와 닮아 있다. 개발 기초를 익히고(예제를 따라 해 성공 경험을 쌓기), 만들고 싶은 앱을 정한 뒤, 핵심 기능이 실제로 구현 가능한지부터 테스트한다(예: 원하는 데이터를 제공하는 API가 있는가). 이후 디자인을 하고, 그중 개발이 어려운 부분은 구현 가능한 범위로 다시 디자인을 조정한 다음 실제 개발에 들어간다. Google Analytics 같은 로그 도구를 앱에 심고, 시뮬레이터와 실제 기기로 테스트한 뒤 스토어에 등록해 배포하고, 이후 마케팅과 지표 관찰(스토어 통계, GA), 사용자 피드백 반영까지 이어지는 반복 사이클이다.
직접 만들어보면서 얻은 교훈도 여러 갈래다. 첫째, 디자인 단계에서는 보이지 않던 엣지 케이스가 구현 단계에서 대거 드러난다 — 0~23시간 그래프에서 경계값(0시·23시) 위치 처리, 시간대별 날씨 아이콘이 좁은 그래프 영역에서 겹치는 문제 같은 것들이다. 둘째, API 호출 비용이나 국가별로 다른 주소 체계처럼 디자이너가 미리 파악하기 힘든 외적 제약이 존재하며, 이를 알아채는 것은 결국 직접 구현해보는 사람의 몫이므로 디자이너와 개발자 간의 소통이 중요하다. 셋째, 시간에 쫓기면 로딩·인터랙션 애니메이션처럼 "더 나은 UI를 위한" 개선은 뒤로 밀리기 쉽다 — 기능이 동작하는 것 자체에 대한 성취감이 크다 보니, 정작 사용자 경험을 다듬는 작업은 자기합리화 속에 미뤄지게 된다. 넷째, 아무리 잘 만든 제품이라도 유통과 마케팅 없이는 사용자에게 닿지 않는다. 그래서 배포 이후에는 앱스토어/구글플레이 통계와 GA를 지속적으로 관찰하며 알리는 활동이 개발 자체만큼 중요해진다.
이런 접근은 완벽한 이해보다 초반의 성공 경험을 우선시하는 태도에서 출발한다. 전문가 수준으로 만들지 못하더라도, 위험하거나 남에게 해를 끼치지 않는 선에서는 무엇이든 직접 만들어볼 수 있다는 관점이다.
핵심 내용
- React Native + Expo: 네이티브 개발(Xcode, Swift)보다 진입장벽이 낮은 디자이너용 모바일 앱 개발 도구체인. Expo가 배포·인증서·스토어 등록의 복잡한 준비 과정을 자동 처리
- 1인 앱 개발 프로세스: 기초 학습 → 아이템 선정 → 핵심 기능 가능성 테스트 → 디자인 → 구현 가능 범위로 재디자인 → 개발 → 로그/분석 도구 삽입 → 테스트 → 스토어 배포 → 마케팅 → 지표 관찰 → 피드백 반영
- 디자인 단계에서 놓친 엣지 케이스(그래프 경계값, 아이콘 겹침 등)는 구현 단계에서 드러남
- API 과금, 국가별 주소 체계 차이 같은 외적 제약은 디자이너 혼자 파악하기 어려워 개발자와의 소통이 필수
- 시간 압박 속에서 로딩·인터랙션 애니메이션 같은 "더 나은 UI"를 위한 작업이 가장 먼저 후순위로 밀림
- 제품 품질만큼 유통·마케팅이 중요 — 배포 후에도 Google Analytics, 앱스토어/구글플레이 통계로 지속 모니터링 필요
- 완벽한 이해보다 초반의 성공 경험을 우선시하는 접근이 비개발자의 진입장벽을 낮춤
관련 개념
- 슬랙봇 개발 — 같은 저자가 먼저 시도한 비개발자의 자체 개발 프로젝트, '초반 성공 경험' 전략을 공유
- 디자이너 개발자 협업 — 디자이너가 갖춰야 할 기술적 감각과 구현 제약에 대한 소통
- 린 스타트업과 피벗 — MVP로 출시 후 지표와 피드백을 반영해 개선하는 프로세스와의 유사성
- 프로토타이핑 툴 비교 — 디자인-구현 간극을 줄이는 다른 접근 도구들과의 비교
출처
- 디자이너, 날씨앱 개발하기 — 2019-02-18, Sungi Kim