Now in Android 앱 분석(1) - 개요
Now In Android 앱을 분석해보자.
https://github.com/android/nowinandroid
소스를 다운 받고 Manifest.xml를 둘러보다가 졸음이 쏟아졌다.
이대로는 안되겠다싶어 AI의 힘을 빌려보았다.
현존 최강의 AI인 Claude 3.5 Sonnet을 안드로이드 tabnine 플러그인을 통해 사용해보았다.
아래는 뜬금없지만 Claude 3.5의 위상을 잘 나타내주는 표이다.
출처: https://www.anthropic.com/claude |
Claude에게 Now In Android 앱 프로젝트에 대한 설명을 요구했고 다음과 같은 답변을 받았다.
"Now in Android" 앱은 Android 개발자들을 위한 참조 프로젝트로, 최신 Android 개발 기술과 best practices를 보여주는 완전한 기능을 갖춘 앱입니다.
주요 기술 및 특징:
- Kotlin: 전체 앱이 Kotlin으로 작성되었습니다.
- Jetpack Compose: UI는 완전히 Jetpack Compose를 사용하여 구축되었습니다.
- Compose는 선언적 UI 프레임워크로, 더 적은 코드로 더 강력한 UI를 만들 수 있습니다.
- Material 3: 앱 디자인은 Material 3 가이드라인을 따릅니다.
- 모듈화 아키텍처: 앱은 여러 모듈로 나뉘어 있어 확장성과 유지보수성을 높였습니다.
- Hilt: 의존성 주입을 위해 Hilt를 사용합니다.
- Coroutines 및 Flow: 비동기 프로그래밍을 위해 사용됩니다.
- Android Architecture Components: ViewModel, Room 등을 사용합니다.
- 테스팅: 단위 테스트, 통합 테스트, UI 테스트를 포함합니다.
- CI/CD: 지속적 통합 및 배포를 위한 설정이 포함되어 있습니다.
- 성능 최적화: Baseline Profiles, Macrobenchmark 등을 사용합니다.
이 프로젝트를 이해하기 위한 단계별 접근 방법:
- 프로젝트 구조 파악:
- 루트 디렉토리의 구조를 살펴보세요.
- 각 모듈의 역할을 이해하세요 (app, core, feature 등).
- 아키텍처 학습:
- "docs/ArchitectureLearningJourney.md" 문서를 읽어보세요.
- MVVM 패턴과 Clean Architecture 원칙이 어떻게 적용되었는지 확인하세요.
- 모듈화 전략 이해:
- "docs/ModularizationLearningJourney.md" 문서를 통해 모듈화 전략을 학습하세요.
- UI 및 Jetpack Compose:
- "core/designsystem" 모듈을 살펴보며 Material 3 구현을 확인하세요.
- 다양한 Compose 화면 구현을 "feature" 모듈에서 확인하세요.
- 데이터 흐름:
- “core/data”, “core/database”, “core/network” 모듈을 살펴보며 데이터 처리 방식을 이해하세요.
- 테스팅 전략:
- 각 모듈의 test 디렉토리를 확인하여 다양한 테스트 방식을 학습하세요.
- 성능 최적화:
- “benchmarks” 모듈과 Baseline Profile 생성 방식을 살펴보세요.
- CI/CD 파이프라인:
- “.github/workflows” 디렉토리에서 GitHub Actions 설정을 확인하세요.
이 프로젝트를 통해 현대적인 Android 앱 개발의 모든 측면을 배울 수 있습니다. 각 부분을 차근차근 살펴보면서, 필요한 경우 관련 문서나 Android 개발자 문서를 참조하시면 좋습니다. 특히 README.md에 언급된 학습 여정 문서들은 매우 유용한 리소스입니다.
역시 현존 최강의 AI는 대단하다. AI가 알려준대로 단계별 접근 방법을 따라 공부해보려고한다.
내용을 쭉 훑어보고 뭘 먼저 공부할지 결정해서 다음 포스팅을 해봐야겠다.
댓글
댓글 쓰기