Replies: 1 comment
-
|
일반 코드로 싱글톤 패턴을 구현할 경우 개발자가 직접 싱글톤 패턴을 구현하는데, 주로 정적 변수와 정적 메서드를 사용하여 구현합니다. 스프링 컨테이너를 통한 싱글톤을 사용할 경우 스프링 컨테이너에서 빈으로 등록한 클래스들은 기본적으로 싱글톤으로 관리하는데, 스프링이 싱글톤을 관리하기 때문에 개발자가 직접 구현하지 않지만 스프링 컨테이너에 종속되므로 테스트를할 때 스프링 컨테이너를 초기화해야합니다. 따라서 단위 테스트가 일반 코드로 싱글톤을 구현할 때보다 복잡해집니다. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
싱글톤 패턴의 단점 중에 인스턴스를 공유해서 사용하기 때문에 테스트가 어렵다는 단점이 있습니다. (테스트는 독립적으로 실행되어야 하기 때문)
@Configuration애노테이션을 사용함으로써 스프링 빈들이 싱글톤으로 관리될 수 있으니 여러 단점들을 극복할 수 있는 건 알겠는데 일반 코드로 싱글톤 패턴을 구현하나/ 스프링 컨테이너를 통해 싱글톤을 구현하나 인스턴스를 공유하는 거 자체는 동일하기 때문에 테스트에 영향을 미칠 수 있는 거 아닌가요??Beta Was this translation helpful? Give feedback.
All reactions