Android/MVVM

    [Android][1] MVVM패턴 Databinding 맛보기!

    * 본 내용은 스스로 학습한 내용을 정리한 게시글입니다. * 데이터바인딩(DataBinding)이란? 기존에는 레이아웃의 뷰를 참조하기 위해서는 아래와 같이 findViewById() 메서드를 사용하였다. val button: Button = findViewById(R.id.my_button) 하지만 이러한 방식은 같은 한 화면에는 여러 개의 뷰가 존재하는 액티비티 클래스에 동일한 메서드를 너무나도 많이 호출시키게 만들어 클린 코드에 적합하지 못하다고 판단하였다. 그래서 등장하게 된 것이 바로 데이터바인딩(DataBinding)이다. 데이터바인딩을 사용했을 때의 장점 1. findViewById를 연속적으로 사용할 필요 없이 binding 객체 하나만 있으면 뷰를 참조할 수 있다. 2. RecyclerV..

    [Android][0] MVVM 패턴이란?

    * 본 내용은 스스로 학습한 내용을 정리한 게시글입니다. * 오늘부터 Android의 MVVM 패턴에 대하여 정리해보려고 한다. 이미 기존에 대략 공부를 해보긴 했지만, 지식이 너무 얇팍하고 부족함을 느껴 글로 정리해보려고 한다. MVVM 패턴을 사용해야 하는 이유 기존에 Android 앱을 개발하다보면 Activity 하나에 모든 기능을 쏟아붓고 방치해두다가, 며칠 지나서 수정할 일이 생겨 프로젝트를 열어보면 내가 작성한거지만 무슨 용도로 해놓은 메소드인지, 클래스인지 구분하기 어려울 정도로 체계적이지 않았다. 그러다보니 기능 추가 및 수정시 다시 소스코드를 분석해야 하므로 시간이 오래 소요되는 불필요한 상황이 만들어진다. 이런 코드를 흔히 스파게티 코드(spaghetti code)라고 부른다. (코드..