junsuk5 / kotlin-android

오준석의 안드로이드 생존코딩: 코틀린 편 1판. 예제 소스 코드
http://www.yes24.com/24/goods/64494679?scode=029
55 stars 29 forks source link

오버라이드된 함수인 getItemId를 지워도 에러가 안나는데요 #2

Open doqsa opened 5 years ago

doqsa commented 5 years ago

간만에 좋은 책 만나서 잘 보고 있습니다.

자바로 코딩을 좀 하다가 너무 어려워서 힘들었는데 코틀린과 ANKO의 조합이 참 간단하고 이해도 빠르네요. 앞으로도 좋은 책 부탁합니다.

혹시 Kotlin과 Anko에 대해서 더 많이 알수 있는 책이 있을까요? (원서라도 있으면 추천부탁합니다.)

그런데 좀 보다가 이상한게 있어서 문의합니다.

getItemId 함수를 호출하는 곳이 없길래 이부분을 지워도 에러가 안나고 실행이 잘 되는데요.

뭔가 코딩이 지워진게 아닐까요?

junsuk5 commented 5 years ago

getItemId의 오버라이드는 어댑터에서 id를 호출할 때 어떤 값을 유니크한 값으로 정할지 정해주는 부분이기 때문에 명시적으로 호출되는 메서드가 아닙니다. 사실 id를 이용해서 뭘 하는 부분이 없어서 해당 부분을 지워도 작동되는데 아무 문제는 없습니다. RealmBaseAdapter 쪽에서 이미 getItemId()는 position을 리턴하도록 정의되어 있고 특별히 사용하지는 않습니다. 따라서 책에 명시되어 있는 부분의 경우 오버라이드 하여 재정의 한다면 그런식으로 임의로 정의할 수 있다. 정도로 이해하고 넘어가시면 됩니다.

junsuk5 commented 5 years ago

Kotlin에 대해서라면 Kotlin in Action 이 좋습니다. Anko는 공식 페이지를 참고하시면 됩니다. https://github.com/Kotlin/anko

doqsa commented 5 years ago

아네 늦은시간에 감사합니다. 실력도 있으시고 부지런도 하시니 꼭 성공하시기를 바랄게요 ㅎ