pile·
모바일·스포카spoqa·

키친보드 안드로이드 앱 Jetpack Compose 도입기

문제키친보드 안드로이드 앱은 XML 레이아웃·color·drawable 리소스를 오가며 작업해야 했고 RecyclerView 구현이 복잡해 개발 피로가 컸다.

접근선언형 UI인 Jetpack Compose를 도입해 UI 코드를 Kotlin 한 파일에서 작성하고 LazyList로 리스트를 단순화했으며 단방향 데이터 흐름과 MVI 패턴으로 상태 관리를 정리했다.

결과러닝 커브라는 비용은 있었지만 컨텍스트 전환을 줄여 개발 속도와 가독성을 끌어올렸고 향후 UI 변경에도 더 잘 견디는 구조를 확보했다.

스포카
스포카 블로그
원문은 여기서 이어서 읽을 수 있어요
원문 읽기
읽음 (0)

이 글과 비슷한

  1. 모바일·LINE EngineeringLINE Engineering·

    AttributedString 구조로 풀어낸 대규모 iOS 설정 시스템

    문제대규모 iOS 설정 화면을 모든 종류의 UI 요소(텍스트 / 스위치 / 링크 / i18n) 와 함께 다루기 어렵다.

    접근Swift AttributedString 구조로 설정 항목 모델을 통합. 텍스트와 인터랙티브 요소를 한 모델로 표현해 일관된 렌더링/다국어 처리 가능하게.

    결과설정 화면이 단일 데이터 모델로 통합돼 유지보수가 쉬워졌다. 새 설정 추가 시 코드 변경 최소화.

    #ios#swift#attributedstring+2
  2. 모바일·스포카스포카·

    KMP/CMP 마이그레이션, 정말 프로덕션에서 가능할까? - 키친보드 앱 마이그레이션 도전기

    문제Kotlin Multiplatform (KMP) + Compose Multiplatform (CMP) 이 프로덕션 환경에서 정말 쓸 만한지 의문이 많다.

    접근스포카 키친보드 앱을 KMP/CMP 로 마이그레이션. iOS/Android 코드 공유율, 빌드 시간, 디버깅 경험, native 통합 시 마주친 함정까지 솔직 리뷰.

    결과부분 영역에서 KMP 가 충분히 production-ready. 단점 영역(특히 iOS 디버깅) 도 명확히 식별.

    #android#ios#cross-platform+2
  3. 모바일·당근당근·

    200MB 모듈을 팀 단위로 해결하기: 당근 숏폼팀의 On-demand Dynamic Feature Module 도입

    문제당근 숏폼팀의 모듈이 200MB 까지 커져 빌드 시간 / 메인 APK 사이즈가 문제가 됐다.

    접근Android Dynamic Feature Module (DFM) 로 숏폼 기능을 on-demand 로 분리. 사용자가 진입할 때만 다운로드.

    결과메인 APK 사이즈 감소 + 빌드 시간 단축. 팀 단위 코드 소유권도 명확해짐.

    #android#dynamic-feature-module#modularization+2