핵심 요약
타다의 비트윈 PC 버전 개발기는 웹 플랫폼 기반의 네이티브 애플리케이션으로 개발되어 생산성을 높였고, 약 4개월의 개발 기간 동안 겪은 시행착오를 공유합니다. PC 버전은 Chromium Embedded Framework(CEF)로 브라우저 엔진을 내장하고, Alfred에 WebSocket 프로토콜을 추가해 서버와의 양방향 연결을 가능하게 했습니다.
구현 방법
- HTML/자바스크립트 기반 웹 앱 부분과 이를 구동하는 셸(CEF 기반) 구조
- CEF의 Message Router를 활용한 렌더 프로세스-브라우저 프로세스 간 비동기 통신으로 확장 기능 제공
- WebSocket 지원 추가로 서버와의 지속적 양방향 연결 유지
- React를 도입해 약 40개의 컴포넌트로 UI 구성
- Webpack 빌드를 통한 모듈 시스템 구성: jsx-loader, less-loader, css-loader, url-loader 등 활용
- ECMAScript 6 활용: 화살표 함수, 클래스, 해체(destructuring) 대입 등 현대 자바스크립트 기능 도입
주요 결과
- 개발 비용 절감을 위한 웹 플랫폼 기반의 네이티브 애플리케이션 도입
- Alfred에 WebSocket 확장으로 서버와의 양방향 연결 구현 및 기능 확장
- CEF 디버깅 도구 활용으로 디버깅 용이성 및 협업 지원 강화
- 약 40개의 React 컴포넌트 구조로 UI의 관리 및 확장성 향상