[kotlin] 코틀린에서 뷰모델 클래스 작성하기

안녕하세요! 오늘은 안드로이드 앱 개발에서 코틀린을 사용하여 뷰모델(ViewModel) 클래스를 작성하는 방법에 대해 알아보겠습니다.

1. 뷰모델이란?

뷰모델은 안드로이드 아키텍처 컴포넌트 라이브러리의 일부로, 사용자 인터페이스 관련 데이터의 저장 및 관리를 담당하는 클래스입니다. 주로 화면 회전 및 구성 변경과 같은 상황에서 데이터를 유지하고, 화면 간 데이터 공유 및 비즈니스 로직 분리를 위해 사용됩니다.

2. 뷰모델 클래스 작성하기

import androidx.lifecycle.ViewModel

class MyViewModel : ViewModel() {
    // 뷰모델 클래스 내에서 상태 및 데이터 저장
    private var data: String = "Hello, World!"

    fun getData(): String {
        return data
    }

    fun setData(newData: String) {
        data = newData
    }
}

위 예시 코드에서 MyViewModel 클래스는 ViewModel 클래스를 상속하고 있으며, 데이터를 저장하고 관리하는 역할을 수행합니다. data 멤버 변수는 뷰와 관련된 데이터를 저장하고, getData()setData() 메서드를 통해 데이터에 접근하고 수정할 수 있습니다.

3. 뷰모델 사용하기

뷰모델 클래스를 사용하기 위해서는 ViewModelProvider를 통해 뷰모델 인스턴스를 얻어와야 합니다.

val viewModel = ViewModelProvider(this).get(MyViewModel::class.java)

위 코드는 액티비티나 프래그먼트 내에서 MyViewModel을 사용하기 위한 코드입니다.

4. 요약

코틀린에서 뷰모델 클래스를 작성하는 방법에 대해 간략히 살펴보았습니다. 뷰모델을 통해 데이터 관리와 화면 간 데이터 공유를 보다 효율적으로 할 수 있으며, 안드로이드 앱의 아키텍처를 개선하는데 도움이 됩니다.

더 많은 내용을 학습하고 싶다면 안드로이드 공식 문서를 참고하세요.

참고 자료