ViewBinding과 DataBinding을 사용하는 이유 뷰에 접근할때마다 findViewById를 사용할 필요가 없다. Null Safety: 뷰를 직접 참조하기 때문에 없는 아이디로 인한 null exception 발생하지 않음.>
ViewModel 클래스는 수명 주기를 고려하여 UI 관련 데이터를 저장하고 관리하도록 설계되었다.화면 회전과 같이 구성을 변경할 때도 데이터를 유지할 수 있다.ViewModel 말고 기존의 onSaveInstanceState() 를 이용해서도 데이터를 관리할 수 있지
1\. LiveData에 대한 개요 / 간단한 예제(LiveData는 관찰 가능한 데이터 홀더 클래스이다. 수명주기를 인식한다.UI와 데이터 상태의 일치 보장메모리 누수 없음중지된 활동으로 인한 비정상 종료 없음수명 주기를 더 이상 수동으로 처리하지 않음최신 데이터 유
액티비티에서 뷰바인딩을 이용해서 버튼1을 누르면 Fragment1로 이동하고, 버튼2를 누르면 Fragment2로 이동하는 예제를 만들어보자.Fragment를 이동하면서 Fragment의 파괴를 중심으로 LifeCycle을 살펴보자.위부터 순서대로 버튼2 클릭 -> 버
LiveData의 값을 변경하는 예제를 만들어보자.만약 10이 입력되면 첫번째 줄에는 10+10이, 두번째 줄에는 10\*10이 출력되는 예제를 만들어보자.Activity의 observer에서 데이터의 값을 계산해서 출력할 수도 있지만 코드가 복잡해지기 때문에 View
Retrofit 이란?(---Retrofit 이란?
동기 방식 vs 비동기 방식(앞 예제에서 차례대로 api.getPostNumber(1), api.getPostNumber(2), api.getPostNumber(3), api.getPostNumber(4) 를 호출하면 차례대로 posts/1, 2, 3, 4 데이터가 불
Retrofit 예제 변경(Retrofit 예제 변경
지난 코루틴 강의에서 function 앞에 suspend를 붙인다는데 과연 suspend 함수는 무슨 기능을 할까 궁금해서 찾아보았다.아주 친절하게 설명해주신 블로그 발견!suspend의 사전적 의미는 '중지하다' 이다.코루틴에서의 suspend 키워드는 시작하고, 멈
출처:https://developer.android.com/training/dependency-injection/manual?hl=koAndroid의 권장 앱 아키텍처는 코드를 클래스로 분할하여 관심사 분리의 이점을 누리길 권장한다.지금까지 예제에서는 Repo