livedata

최근 MVVM 관련 학습을 하던 중 LiveData와 Databinding을 함께 사용하는 경우가 많았다. LiveData가 사용하는 것이 오늘 정리해 볼 관찰자 패턴이다. Observer Pattern? 관찰자 패턴? 단어 그대로, 무엇인가를 살펴보는 것을 의미한다. 관찰자 패턴은 객체의 상태 변화를 관찰하는 관찰자(옵저버)의 목록을 객체에 등록해서 상태변화가 있을 때마다 메서드 등을 통해 객체가 직접 목록의 각 옵저버에게 알리도록 하는 디자인 패턴이다. 이 패턴의 핵심은 옵저버 또는 리스너라 불리는 하나 이상의 객체를 관찰 대상이 되는 객체에 등록시킨다. 그리고 각각의 옵저버들은 관찰 대상인 객체가 발생시키는 이벤트를 받아 처리한다. 이벤트가 발생하면 각 옵저버는 콜백을 받는다. 데이터가 변화하는 것..
LiveData LiveData는 관찰 가능한 데이터 홀더 클래스이다. 일반 클래스와 달리 수명주기를 인식한다. Observer 클래스로 표현되는 관찰자의 수명 주기가 STARTED, RESUMED 상태이면 LiveData는 관찰자를 활성 상태로 간주하고, 활성 상태인 관찰자에게만 업데이트 정보를 알린다. LifeCyclerOwner 인터페이스를 구현하는 객체와 페어링 된 관찰자를 등록할 수 있다. 이 관계를 사용하면 관찰자에 대응되는 LifeCycle 객체의 상태가 Destroyed로 변경될 때 관찰자를 삭제할 수 있다. 이는 특히, 액티비티 및 프래그먼트에 유용한데, LiveData를 안전하게 관찰할 수 있고 수명 주기가 끝나는 즉시 수신 거부되어 메모리 누수에 대한 이슈가 없기 때문이다. LiveD..
빡수수
'livedata' 태그의 글 목록