GoogleOAuthClient가 아닌 IOAuthProvider(추상)에 의존 → 새 공급자도 무수정.
간편결제 PG: IPaymentGateway 추상에만 의존 → PG사 교체 자유, 테스트용 MockPaymentGateway도 끼움.| 위반 (Before) | 준수 (After) |
|---|---|
OrderService → MySqlOrderRepository 직접 의존 | OrderService → IOrderRepository(추상) ← MySqlOrderRepository |
DB 바꾸면 OrderService도 같이 수정 | 추상만 그대로면 DB 교체 자유 |
GoogleOAuthClient가 아닌 IOAuthProvider(추상)에 의존 → 새 공급자도 무수정.
간편결제 PG: IPaymentGateway 추상에만 의존 → PG사 교체 자유, 테스트용 MockPaymentGateway도 끼움.