• 카테고리

    질문 & 답변
  • 세부 분야

    모바일 앱 개발

  • 해결 여부

    미해결

강의중 HashMap 관련 질문

18.08.25 16:45 작성 조회수 115

0

강의중간에 Kotlin 디컴파일 코드 설명에서 HashMap이 느려서 사용하지 않으시려는분들은~ 이라고 말씀하신 부분이 HashMap 자체 성능의 문제인가요 아니면 자동부여 과정(get , set 함수를 선언하지 않고 자동으로 컴파일러가 결정)에서 CachedView 함수와 HashMap을 이용하여 결정짓기 때문에 느린건가요? (Java HashMap 성능이라고 구글 검색해도 제대로 나오지 않아서... 여쭤보게 되었습니다)

답변 2

·

답변을 작성해보세요.

0

cloudia님의 프로필

cloudia

질문자

2018.08.26

정말 감사합니다 이해되었어요 ㅜㅜ

0

안녕하세요. 느리다는 부분은 get/set을 한번 더 호출하는 부분 때문에 느릴 수 있다는 부분입니다. 기존에는 findViewById 를 해두면 전역에서 1번 호출 후에 다시 호출하지 않고, 가져다 쓰는데 HashMap을 통해 자동 캐시처리를 해줄 경우 불필요하게 메소드 호출이 발생하며, get을 호출하는 부분이 있기 때문에 설명한 부분입니다. HashMap 자체의 성능에 대한 언급은 아니였지만, HashMap 성능의 언급으로 보일 수 있는 점에 주의해서 추후 개선하도록 하겠습니다.
본 강의는 Kotlin으로 작업하고, 실제 Java 코드가 어떤식으로 접근하는 부분을 구성해둔 강의입니다.