싱글톤 패턴 싱글톤 패턴이란 객체 지향 프로그래밍에서 클래스의 인스턴스가 단 하나만 생성되도록 보장하는 디자인 패턴이다. 여러 사용자가 동시에 접근해서 한 인스턴스를 쓸 때 싱글톤 패턴을 사용하면 메모리 낭비를 방지하며 접근이 용이한 장점이 있다. 하지만 "전역 상태" 이기 때문에 테스트가 어렵고 SRP, DIP 원칙을 위배하는 단점이 있어 안티패턴이라고도 불린다. 이러한 안티패턴에 가까운 싱글톤 패턴을 왜 스프링은 적용했을까? 스프링은 대규모 시스템에서 효율적인 자원관리가 필수적이기 때문에 적용했다. 스프링은 스프링 컨테이너에서 각 빈(Bean)의 인스턴스 하나만 생성하고 관리하는 싱글톤 패턴을 적용했다. 이 과정에서 의존성 주입 (Dependency Injection)을 활용했고 싱글톤 패턴의 문제점..