[개발일기] 22-06-21

오늘·2022년 6월 21일
0

[개발일기]

목록 보기
59/199

📝 간단하게 쓰는 개발일기

함수형 코틀린

6장을 마무리했다. 위임된 맵, 커스텀 델리게이트, 로컬 델리게이트, 클래스 위임에 대해 공부했다.

정리

  • 클래스의 생성자에서 매개변수를 하나 하나 선언하는 대신, Map 하나를 선언하고 그 Map을 델리게이트로 사용하여 개수가 많은 매개변수 선언을 대체할 수 있다.
  • 위임된 맵으로 선언된 클래스의 인스턴스를 생성할 때, 모든 인자(멤버)를 map에 다 넣어주는 것이 좋다.
  • 모든 인자(멤버)를 다 넣어주지 않으면, 해당 인자(멤버)에 접근할 때 java.util.NoSuchElementException이 발생한다.
  • 사용자가 원하는 델리게이트를 직접 선언해서 사용할 수 있다. 그것을 커스텀 델리게이트라고 부른다.
  • 로컬 프로퍼티가 초기화 이후 특정 블록 안에서만 실행되어야 할 경우 lazy 델리게이트를 사용해서 메모리를 절약할 수 있다.
  • 같은 인터페이스를 상속받는 두 클래스에 대해, 한 클래스에서 다른 클래스의 인스턴스를 멤버로 사용할 때 클래스 위임을 사용할 수 있다.

커스텀 델리게이트와 클래스 위임은 무엇을 의도하는 것인지 정확히 이해하지는 못했다. 이 부분에 대해 더 공부를 할 필요가 있을 것 같다.

profile
Junior Mobile 개발자

0개의 댓글