싱글톤 - kotlin

상상코딩·2022년 1월 3일
0

코틀린에서 싱글톤 패턴 구현하기

object SingletonObj {

}

이게 싱글톤 구현 끝이다!

코틀린에선 static 개념이 사라지면서 object 라는 개념이 등장한다. object 로 클래스를 정의하게 되면, 클래스를 정의하는 동시에 인스턴스를 생성한다. 이 때, 무조건 단일 인스턴스 생성을 보장한다.

이 클래스 안에 필요한 객체 (e.g. Retrofit 등) , 메소드 등을 정의해두면 프로그램 전역에서 이를 활용할 수 있다.

심지어는 다양한 제약 조건 (멀티 쓰레딩 환경 등) 을 고려해줄 필요 없이, Thread-safe 하고 Lazy 한 초기화(덤프 떠서 확인해보니까 쓰이기 전까지 인스턴스화 되어있지 않은걸 보니 맞다고 판단했어욤)를 언어 차원에서 지원해준다. 따라서 개발자는 이러한 것들을 신경쓰지 않아도, 알아서 안전하고 효율적이게 싱글톤이 구현된다.

ref.
https://velog.io/@haero_kim/혹시-싱글톤이세요-저는-벙글톤이에요-ㅋㅋㅋ

profile
히히낙낙

0개의 댓글