app · iOS · android
Chip Tally
오프라인 보드게임의 칩 계산을 한 화면에. 동시에 — 작은 단일 화면 앱을 깨끗한 코드로 어디까지 짤 수 있는지 시험해본 연습 프로젝트.
서비스 소개
Chip Tally 는 친구들과 보드게임을 할 때 — 점수와 칩을 빠르게 정산할 수 있게 만든 작은 도구입니다. 기능은 의도적으로 단순하게 잡았습니다. 이 프로젝트의 더 큰 목적은 "사용자에게 줄 만한 가치"보다는 — 한 화면짜리 앱을 얼마나 깨끗하게 짤 수 있는지 직접 손으로 짚어보는 것이었습니다. 한 달 먼저 만든 Tichu Tally 에서 시도한 골격을 — 다른 도메인에서도 그대로 통하는지 확인해보는 — 두 번째 연습 자리이기도 했습니다.
iOS 는 Swift 로 클린 아키텍처(도메인 / 데이터 / 프레젠테이션) 분리를 끝까지 지키며 짰고, Android 는 Kotlin 네이티브로 같은 골격을 따라가도록 별도 구현. 한 코드베이스가 아닌 양 플랫폼을 동등한 수준으로 동시 출시했습니다.
- 빠른 입력참가자별 칩을 큰 버튼으로 즉시 가감. 한 손 조작 가능.
- 라운드 단위 정산한 라운드가 끝나면 합산 / 차이를 한 화면에서 확인.
- 오프라인 동작네트워크 / 로그인 불필요. 그 자리에서 바로.
- 다국어한국어 / 영어 — 해외 친구와도 함께.
- iOS · Android 동시각각 네이티브 빌드 (Swift 클린 아키텍처 / Kotlin).
Behind the scenes
제품을 키우는 데 의의를 둔 앱이 아니라, 코드를 다듬는 데 의의를 둔 작은 연습 프로젝트입니다.
-
01
"깨끗한 코드" 가 목적인 연습 프로젝트
Chip Tally 는 화면 하나, 데이터 하나, 로직 하나 — 사실상 가장 작은 종류의 앱입니다. 한 달 전에 만든 Tichu Tally 에서 시도했던 클린 아키텍처 골격을 — 다른 도메인 / 다른 룰에 옮겨도 그대로 통하는지 확인해보는 두 번째 자리였습니다. 도메인 / 데이터 / 프레젠테이션을 분리하고, 의존성 방향을 한 쪽으로만 흐르게 하고, 테스트 가능성을 화면 단위가 아니라 도메인 단위로 잡고, 같은 골격을 안드로이드에서 거의 그대로 따라 짜며 — "이 정도 규모에서 깨끗한 코드란 어떤 것인가" 에 대한 답을 한 번 더 다져보는 작업이었습니다. 서비스로서의 야심보다는, 이후 더 복잡한 앱들을 짤 때 같은 손이 다시 잡힐 만한 형태를 손에 익히는 시간이었습니다.
Screenshots
카드를 누르면 큰 이미지로 볼 수 있습니다.
More
지나온 버전과 앞으로 들어갈 항목을 별도 페이지에서 확인할 수 있습니다.