창과방패의 관계인 싱글톤 패턴과 유닛테스트
개발/Web Programming
2022. 7. 15. 21:57
이 글을 이해하기 위해서는 2가지 개념이 필요하다. 제목에서 알 수 있듯이 “싱글톤 패턴”, “유닛테스트”이다. 싱글톤 패턴이란? 싱글톤 패턴은 어떤 class가 오직 하나의 instance만 가지도록 하는 패턴이다. 유닛테스트란? 테스트의 한 종류로, 코드의 특정모듈이 의도된 대로 정확히 작동하는지를 검증하는 테스트이다. 싱글톤 패턴과 유닛테스트는 창과 방패의 싸움이다. 많은 테스트 프레임워크가 mock 객체를 생성할때 상속에 의존하기 때문에, 싱글톤 클라이언트 코드를 단위 테스트하기가 어려울 수 있다. 예를들어 아래 링크에서는 Singleton Real-World Analogy The government is an excellent example of the Singleton pattern. A co..