본문 바로가기

안드로이드41

[Android] Clean Architecture With Pokedex (feat. Jetpack Compose, Hilt) - 1 이번 포스팅은 Clean Architecture의 구성요소와 개념에 대해 알아보고, 안드로이드 프로젝트를 생성하여 기반작업을 해 볼 것이다. Clean Architecture에 대해 검색해본 사람이라면, 아래 그림을 정말 많이 접했을 것이다. 개인적으로, 위 다이어그램만 이해한다면 Clean architecture는 끝이라고 할 만큼 기본이고 핵심이라고 생각한다. 좌측 원형 다이어그램을 분석해보자. 가장 바깥쪽부터 안쪽으로 화살표가 있는데, 이것은 의존성을 의미한다. 즉, 바깥쪽에서 안쪽으로만 의존하며, 가장 안쪽인 Entities는 의존성을 갖지 않는다. 또한, 안쪽에서 바깥쪽으로의 의존성은 없다. 이것은 Clean architecture의 가장 핵심적인 룰이다. 우리가 알아야 할 요소는 Present.. 2022. 5. 28.
[Android] Clean Architecture With Pokedex (feat. Jetpack Compose, Hilt) - 0 현업에서 안드로이드 앱을 개발한지 이제 막 4년이 되어간다. 가장 많은 변화를 꼽으라면 언어의 변화와 아키텍처를 꼽을 수 있을 것 같다. 영원할 것 같던 Java를 제치고 Kotlin이 자리를 잡고, MVC 패턴에서 MVP를 지나 MVVM이 대세 아키텍처로 자리잡고 있다. 물론, MVVM 외에도 MVI, VIPER, RIBs와 같은 다른 유용한 아키텍처도 많고, 실제로 이 아키텍처로 서비스를 개발하고 있는 곳도 많다. 그리고 여기에 더하여, "Clean Architecture"도 중요한 아키텍처로 자리잡고 있다. 직역하면 "깨끗한 구조", "깔끔한 구조" 정도일텐데, 이게 무엇일까? Clean Architecture는 로버트 C 마틴이 제안한 아키텍처이다. 책을 보면, "소프트웨어 구조와 설계의 원칙" .. 2022. 5. 28.
[Android] Firebase - 5. Crashlytics로 앱 크래쉬 추적하기 열심히 개발한 앱을 플레이스토어에 배포했다고 가정해보자. 나름 열심히 예외처리도 했을 것이다. 사용자가 어떤 행동을 할 지 모르고, 어떤 예외가 발생하여 앱이 죽을지 모른다. 그리고 앱이 죽었을 때 이유조차 알기 어려운 경우가 있다. 물론, 구글 플레이 콘솔에서 확인할 수 있기도 하다. 하지만 이런 크래쉬를 좀 더 세세하고 보기좋게 확인할 수 있는 서비스가 Firebase의 Crashlytics이다. 1. Crashlytics 활성화 Firebase 콘솔로 이동하여 "출시 및 모니터링"의 "Crashlytics"로 이동한다. 그리고 "Crashlytics 사용 설정" 을 누른다. 그럼 아마 이런 화면으로 바뀔것이다. 문구를 잘 읽어보면, 앱을 빌드하고 비정상 종료하라고 가이드하고 있다. 이제 Crashl.. 2020. 12. 16.
[Android] Firebase - 4. Remote Config 사용해보기 안드로이드 앱을 개발하다보면 원격에서 어떤 값이나 데이터가 필요한 경우가 있다. 앱의 버전을 체크해서 업데이트 알림을 준다거나 혹은 어떤 공지나 이벤트 등을 발행하여 앱에서 다이얼로그를 띄우는 등 다양한 니즈가 있다. 하지만 별도의 서버를 구축하기엔 너무 과할수도 있고, 서버 개발이 쉽지 않은것도 사실이다. 이럴때 Firebase의 "Remote Config"를 활용하면 편리할 수 있다. 1. Firebase에서 Remote Config 설정 Firebase 콘솔로 이동하여, 좌측의 메뉴 중 "성장" 탭에 있는 "Remote Config"를 선택한다. 그러면 위와 같은 화면을 볼 수 있을 것이다. "매개변수 추가"에 본인이 원하는 변수의 키와 값을 넣어주면 된다. 이 예제에서는 앱의 버전을 체크하고 업데.. 2020. 12. 10.
반응형