// Shared URL Session
let sharedURLSession = URLSession.shared
// Default File Manager
let defaultFileManager = FileManager.default
// Standard User Defaults
let standardUserDefaults = UserDefaults.standard
// Default Payment Queue
let defaultPaymentQueue = SKPaymentQueue.default()
큰 프로젝트에서 DI는 Singleton 패턴의 좋은 대체제가 될 수 있다
→ 리스크가 적고, 예측가능한 코드를 짤 수 있음 ( 이후에 좀 더 자세히 알아보면 좋을 듯 )
Singleton pattern은 CleanCode를 지향하는 사람들에게 안티패턴으로 다루어지지만
DI를 구현하는 것보다 훨씬 쉽고 간편하기 때문에 프로젝트의 크기, 복잡도
에 따라서 잘 맞는 방법을
선택하는 것이 중요하다
Singleton vs Dependency Injection in Swift
What Is a Singleton and How To Create One In Swift