읽기 좋은 Kotlin 코드! Property와 Scope Functions!

효과적으로 Kotlin을 사용하고, 적용하려면 어떻게 하는 게 좋을까?

많은 사례들이 모든 좋은 결과물을 만들진 않지만, 다양하게 보다 보면 좀 더 좋은 코드를 만드는 데 도움을 줄 수 있다.

결국 많은 코드를 작성하고, 자신이 작성한 코드의 리팩토링이 필요함을 함께 깨우칠 수 있기도 하다. 처음부터 너무 욕심부려도 만족스러운 코드가 나오지는 않는다.

그래서 필요한 게 Effective 관련 서적을 함께 보는 것을 추천한다. 이 책에서 좋은 사례들을 많이 접할 수 있으며, 왜 이렇게 설계했고 이렇게 썼을 때 좀 더 좋은 방법 등을 함께 살펴볼 수 있기 때문이다.

필자 생각으론 아름다운 코드란 존재하지 않는다고 생각하나, 동작하는 코드를 만들어내기도 사실 바쁘다. 동작하는 코드를 조금씩 조금씩 수정하다 보면 자기도 모르게 발전되어잇는 모습을 확인할 수 있다.

이런 부분을 위한 최소 조건으로 코드 컨벤션 지키는 것부터 시작해도 좋다고 생각한다.

이 글에서는 읽기 좋은 코드를 만들기 위한 2가지 방법을 살펴본다.


이 글에서 알아볼 내용

  • 읽기 좋은 코드를 위한 코드 컨벤션과 Android Studio의 코드 정리 설정을 살펴본다.
  • 코틀린의 Property 사용 시 주의할 점을 알아본다.
  • Scope functions의 활용도를 어디까지 허용하는 게 좋을지 알아본다.

Read More

Android Fragment 간의 ViewModel 공유하기

안드로이드는 AAC-ViewModel을 제공하는데 기본 3가지를 제공한다.

  • Activity에서 만 사용하는 경우
  • Fragment에서 만 사용하는 경우
  • Activity를 기준으로 Fragment에서 공유해서 사용해야 할 경우

1번과 2번 케이스는 그냥 자기 자신만 사용하는 경우에 흔하게 사용한다.

3번의 케이스는 Activity는 하나이고, Fragment가 여러 개인데 데이터 관리는 Activity만을 기준으로 처리하는 경우가 있다.

이 경우 3번 케이스를 사용하는데, Fragment-KTX를 활용하면 매우 쉽게 접근할 수 있다.


이 글에서는

  • Activity/Fragment에서 자신의 ViewModel을 생성해 사용하는 방법 알아보기
  • Activity ViewModel을 활용하여 Fragment 들에서 사용하는 방법 알아보기
  • Fragment의 ChildFragment 간에 ViewModel을 공유하는 방법(Activity ViewModel을 활용하지 않고)

이렇게 3가지 방법을 알아보는 글이다.

그전에 AAC-ViewModel의 내부 구조가 궁금하다면 > Android Architecture Components ViewModel을 간단하게 초기화 하려면? 살펴보면 좋다.

Read More

Android RecyclerView Adapter에 DataBinding 활용하기

Android RecyclerView.Adapter에 DataBinding 활용하는 방법을 정리한다.

Android RecyclerView 사용하기 Android ListView 사용하기

이번에 작성하는 글에는 Android ViewModel을 활용하며, DataBinding을 간단하게 활용하기 위한 방법을 소개한다.


알아보기 전에

이번 글에서는 아래 내용을 토대로 작성하지만, 이미 DataBinding 활용을 잘 하고 있는 사용자는 불필요한 내용일 수 있다.

  • Base로 DataBinding을 활용하는 Adapter를 활용하는 방법을 소개한다.
  • 1개 이상의 ViewHolder를 사용하고, DataBinding을 활용하려는 경우
  • Jetpack Android ViewModel 사용방법을 알고 있다.
  • RecyclerView.Adapter 활용 방법을 잘 알고 있다.

이 라이브러리는 GitHub에서 확인 가능하다.

SimpleAdapter - GitHub

Read More