본문 바로가기

kotlin4

Android, Hilt를 사용해야하는 이유와 사용방법 0. 개요 프로젝트 진행하며 테스트를 코드를 작성하려는데 어려움을 겪었었다.(킅래스를 재선언하고 매개변수로 받고 하는 등의 작업에서 중복됨을 느꼈다.) 후에 Hilt 라이브러를 활용하여 재사용할 클래스에 의존성 주입을 하니 테스트 코드를 작성하는데 훨씬 수월했다. 사실 아직은 잘 모르겠다. '의존성 주입을 사용한다는 것은 무엇인지', '의존성 주입을 통해 테스트 코드 작성외에 어떤 이점이 있을지' 라는 의문이 든다. 하여 DI와 Hilt라이브러리를 이해하고 사용한다면 어떤 이점이 있는지에 대해 알아보자. Android의 Dependency Injecttion(DI) 1) DI란? 클래스에는 흔히 다른 클래스 참조가 필요 클래스가 필요한 객체를 얻는 세 가지 방법 클래스가 필요한 종속 항목을 구성. 예를 .. 2024. 4. 8.
Android(Kotlin), Compose의 NavController 활용하기 Splash, Fragment만들기 0. 개요 기존의 Android Studio에선 AndroidManifest.xml에서 Theme를 무엇을 쓸 지 정해주고 res폴더에서 layout폴더를 만들어 xml로 UI를 작성해주고 MainActivity에서 바인딩을 하든 FindbyId()를 사용하든 하여 UI의 요소들을 제어했다. Compose는 이러한 절차들을 가볍게해주는 라이브러리이다.(xml이 아닌 kotlin으로 UI를 만들 수 있다.) https://developer.android.com/jetpack/compose/documentation?hl=ko 위의 공식문서에서 Compose의 모든 것을 살펴볼 수 있다. 이 글에선 Compose를 설치하고 화면을 구현하고 화면을 전환되는데 사용되는 NavController에 대해서 다룰 것이.. 2024. 4. 8.
Android, Compose material2 vs material3 0. 개요 기존의 안드로이드 UI를 Compose를 사용하여 리팩토링를 하던 도중 @OptIn(ExperimentalMaterial3Api::class)를 붙여야 해결되는 문제에 봉착했다. 뭐가 다른지 봤더니 meterial3는 아직 실험용인 부분들이 있다. 만약 본인이 초심자라면 많은 reference를 찾을 수 있기 때문에 meterial버전을 낮추길 권장한다. //m2 implementation "androidx.compose.material:material:$m2-version" //m3 implementation "androidx.compose.material3:material3:$m3-version" 1. meterial Design이란? 구글이 모바일과 데스크탑 그리고 그 외 다양한 디바이스.. 2024. 4. 8.
Android(Kotlin), Jetpack Compose로 구현한 UI에서 MPAndroidChart를 활용하여 그래프 그리기 0. 개요 MPAndroidCart는 Philipp jahoda라는 분이 만든 앱을 위한 차트 라이브러리이다. 이번엔 Room DB에 저장된 데이터들을 불러 그래프를 선형 그래프를 구현해보자. 1. MPAndroidChart를 활용하여 구현할 수 있는 그래프 1) LineChart - simple design - cubic lines - grdient fill 2) BarChart - simple design - grouped DataSets 3) Horizontal-BarChart 4) Combiend-BarChart(bar - andlineChart in this case) 5) PieChart(with selection, ..) 6) ScatterChart(with squares, triangles.. 2024. 4. 8.