인프런 커뮤니티 질문&답변
싱글톤과 스프링
작성
·
29
답변 2
0
최태현
지식공유자
앗 해결되셨다니 다행입니다 🙂
사용 방식에 따라 스프링 싱글톤 이슈는 전혀 없습니다.
다만, object 를 코틀린이 문법적으로 지원하기에 편할 때가 간혹 있는데 대표적으로 DDD의 도메인서비스 개념을 구현할 때 좋은 것 같아요.
@Component 를 이용해 단순 class로 만들면 누군가 도메인 서비스의 의도를 잊고 (stateless해야 하는데...) 필드를 추가하는 경우가 생기더라고요.
Kotlin은 확실하게 object 키워드를 써서 필드 추가를 막으면서도 싱글톤으로 바로 사용할 수 있다 보니 (빈 주입을 하지 못하지만 도메인 서비스의 특성상 굳이 빈 주입을 하지 않아도 됩니다) 간혹 요긴하게 사용하고 있습니다.
도메인 서비스 외에도 stateless 하게 만들고 싶은 특정한 영역 (Factory 라거나 Parser 라거나...) 은 object 키워드를 잘 사용하고 있습니다.
감사합니다. 🙇
0





