동적 2

[Kotlin] 확장 함수 & 확장 프로퍼티

Kotlin in Action 을 공부하고 Effective kotlin 의 내용을 조금 참조하여 정리한 글입니다. 확장함수 - 메서드를 다른 클래스에 추가하기 저번 글에서 코틀린 컬렉션은 자바 컬렉션과 똑같은 클래스이지만, 코틀린에서는 아래 코드에서처럼 자바보다 더 많은 기능을 쓸 수 있다고 했다. 우리는 extension function(확장 함수)를 사용하여 기존 JVM 언어 API 를 재작성하지 않고도 코틀린이 제공하는 여러 편리한 기능을 사용할 수 있다. 확장함수는 어떤 클래스의 멤버 메서드인 것처럼 호출할 수 있지만 그 클래스의 밖에 선언된 함수이다. `StringUtil` 이라는 파일을 만들어서 어떤 문자열의 마지막 문자를 돌려주는 메서드를 추가해보자. fun String.lastChar()..

Kotlin 2024.01.01

디자인 패턴 - 동적 프록시(Dynamic Proxy). 동적 프록시 직접 구현해보고 Retrofit 의 create 다시 보기

이전 '디자인 패턴 프록시 패턴 글' 에서 Proxy pattern(프록시 패턴)에 대해 알아 보았습니다. 그리고 'Retrofit 알아보기 (2) - create 뜯어보기' 에서도 프록시 패턴을 사용하는 부분이 나왔었죠. https://sh1mj1-log.tistory.com/169 디자인 패턴 - 프록시 패턴(Proxy pattern) 자바 코드 예시로 보기 먼저 프록시(proxy)의 뜻을 살펴봅시다. 위처럼 proxy 는 대리, 대리인, 대용물 이라는 뜻을 가집니다. 그렇다면 프록시 패턴이라 하면, 누군가가 어떠한 일(역할)을 대신 해주는 모습의 디자인 패턴 sh1mj1-log.tistory.com https://sh1mj1-log.tistory.com/168 안드로이드 통신에 자주 사용하는 Ret..