AI Briefing

카카오 2022 신입 개발자의 Android 기술 온보딩 회고: Clean Architecture와 DI 학습기

·2022.03.15 00:00

핵심 내용

6주간 Clean Architecture와 DI(Hilt, Koin)를 학습하며 To Do, 노트, if(kakao) 2021 웹사이트 구현 등 실무형 과제를 수행한 카카오 2022 신입 개발자들의 회고입니다.

1 / 9

자세히 보기

카카오 2022 신입 개발자(뉴크루)들이 6주간의 Android 기술 온보딩 과정을 회고했습니다. 온보딩은 Clean Architecture와 의존성 주입(DI)을 중심으로 진행되었으며, 주요 과제는 다음과 같습니다.

  1. To Do 앱 (1~2주 차): ListView, RecyclerView, ViewModel, LiveData를 활용하고 Clean Architecture에 따라 Presentation, Data, Domain 계층을 분리했습니다. Room DB를 사용해 데이터 영속성을 구현했습니다.
  2. 노트 앱 (3주 차): Use Case를 도입해 ViewModel의 로직을 분리하고, Unit Test와 Android Test를 작성해 코드 퀄리티를 높였습니다.
  3. 네트워크 통신 (4주 차): HTTP 통신과 Paging 3 라이브러리를 활용해 서버 데이터를 조회하고 페이징 처리를 구현했습니다.
  4. if(kakao) 2021 웹사이트 구현 (5~6주 차): if(kakao) 2021 웹사이트를 안드로이드 앱으로 재현했습니다. DrawerLayout과 ViewPager를 활용해 네이티브 UX를 설계했으며, ViewPager의 높이 문제 등을 해결했습니다.

DI 도입과 TDD 시도 초기에는 수동 의존성 주입으로 인한 코드 중복과 종속성 문제를 겪었으나, Hilt와 Koin 등 DI 도구를 도입해 결합도를 낮추고 단위 테스트를 용이하게 했습니다. 또한 일부 크루는 TDD(테스트 주도 개발)를 시도했으나, 테스트 코드 작성 및 리팩토링으로 인한 작업량 증가와 수정 비용 상승으로 개발 속도가 느려지는 부작용을 겪었습니다. 이에 따라 TDD 적용을 중단하고 Unit Test 중심으로 돌아갔으며, 이 과정 자체가 새로운 프로그래밍 방법론을 탐구한 값진 경험으로 기록되었습니다.

이 한국어 요약은 AI가 자동으로 만들었습니다. 원문의 주장과 맥락은 원문에서 확인해 주세요. 저작권은 원저작자에게 있습니다.

AI 처리 방식을 확인하거나, 요약 오류와 출처 표기 문제, 삭제 요청을 문의 · 건의로 알려주세요.