[Android] ViewBinding 을 써야하나..?

2021. 9. 27. 04:55·프로그래밍/기타

코틀린을 배워보며 안드로이드 앱을 만드는 와중에

기본으로 제공했었다는 kotlin-android-extensions 라는 플러그인이 더 이상 기본 제공이 되지 않는다고 한다.

 

그래서인지 자동으로 작동되지가 않더라.

(처음에 이유를 몰라서 삽질 좀 함....)

 

구글링해보니 편하긴 하지만 좋은 플러그인이 아니라고 한다. (왜..?)

여튼... 안드로이드 4.1 버전부터는 'kotlin-android-extensions'가 기본적으로 제공되지 않는다고 한다.

 

 

 

왜 더 이상 사용하지 않을까?

kotlin-android-extensions은 findViewById의 반복적인 작업을 제거하려고 만들어졌고,
내부적인 캐시를 통해 재사용성을 높인다고 한다.


하지만 RecyclerView의 ViewHolder에서는 그렇지 않다고 한다.
내가 아직 잘 몰라서 나중에 보완해서 내용 추가하겠다.

 

 

1. 동일한 id를 가진 widget이 문제가 된다고 한다.

특히 가장 큰 문제는 런타임 때 즉시 오류가 발생한다고 한다.


사실 id를 동일하게 네이밍 하는 경우는 혼자 개발할 경우에는 거의 없을 것이다.


하지만 개발이란게 혼자 하는것이 아니다보니... 어쩔 수 없나보다.

 

 

2. ViewHolder에서는 캐싱을 해주지 않는다.

사실 이러한 점들은 findViewById가 사용하기 편해졌기 때문에 findViewById만 사용해도 충분할 수 있다고 한다.


하지만 실수를 줄이기 위해서는 ViewBinding이 더 좋다고 한다.

(사실 이제 걸음마 수준이라 전혀 와닿지 않는다..ㅎㅎ;)

 

 

 

 

ViewBinding 관련 영상

 

 

 

(언젠가 영어 좀 능숙해지면 이런거 꼭 돌려본다....)

 

 

 

마무리

kotlin-android-extension 플러그인을 아예 사용하지 못하는것도 아니고...

 

사실 갖다 쓰면 된다.

 

하지만 기왕 하는거 권장하는 방식으로 바꿔서 해보려고 한다.

 

확실히 뭐랄까.... 앱 정말 재밌다.

 

꾸준히 공부해야지

반응형
저작자표시 (새창열림)

'프로그래밍 > 기타' 카테고리의 다른 글

[Vue.js] click 이벤트 submit 새로고침 방지  (0) 2022.01.27
Vue 2에서 vue-cli 대신 Vite 사용하기  (0) 2022.01.16
[nods.js] Express로 서버 구축하기 (w/o Generator) - 1  (0) 2021.10.08
[CSS] 말줄임 표시 하는 방법  (0) 2021.10.04
Spring과 React 통신 시에 CORS 에러 해결  (0) 2021.06.10
'프로그래밍/기타' 카테고리의 다른 글
  • Vue 2에서 vue-cli 대신 Vite 사용하기
  • [nods.js] Express로 서버 구축하기 (w/o Generator) - 1
  • [CSS] 말줄임 표시 하는 방법
  • Spring과 React 통신 시에 CORS 에러 해결
Giwonnnnnnn
Giwonnnnnnn
개발, 일상 등 나에 대한 모든 것을 기록합니다.
  • Giwonnnnnnn
    기록하는 곳
    Giwonnnnnnn
  • 전체
    오늘
    어제
    • 분류 전체보기 (85)
      • 프로그래밍 (32)
        • 객체지향 설계 (6)
        • git (1)
        • Network (2)
        • 후기 (2)
        • 기타 (10)
        • 발생한 에러들 (11)
      • Language (18)
        • Java (0)
        • Python (2)
        • JavaScript (13)
        • TIL (3)
      • 알고리즘 (11)
      • BackEnd (7)
        • 데이터베이스 (1)
        • Nest.js (4)
        • Node.js (2)
      • 자격증 공부 (1)
        • 정보처리기사 (0)
      • 영어공부 (3)
        • 문법 기초 (3)
      • Cloud (3)
        • GCP (3)
      • 일상 (5)
        • 리뷰 (2)
        • 맛집 탐방 (1)
        • 일상 (2)
        • 일기장 (0)
  • 블로그 메뉴

    • 홈
    • 방명록
  • 링크

    • Github
    • LinkedIn
    • Instagram
  • 공지사항

  • 인기 글

  • 태그

    자바
    java
    Object
    오브젝트
    알고리즘
    JavaScript
    파이썬
    프로그래머스
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.1
Giwonnnnnnn
[Android] ViewBinding 을 써야하나..?
상단으로

티스토리툴바