View on GitHub

programming-study

허원철의 개발 블로그

도메인 모델 시작

아키텍처 개요

계층 구조

DIP

도메인 영역의 주요 구성요소

애그리거트

orderer.getCustomer().changeAddress(newSippingInfo.getAddress()); // --- (X)

// ...

Customer customer = customerRepository.findById(orderer.getCustomer().getCustomerId()); // --- (O)
customer.changeAddress(newSippingInfo.getAddress());

리포지토리와 모델구현

리포지토리의 조회 기능

응용 서비스와 표현 영역

응용 서비스

표현 영역

도메인 서비스

애그리거트 트랜잭션 관리

Bounded Context

이벤트

CQRS

DI와 DIP는 무엇이 다른가?

# DI와 DIP는 무엇이 다른가?

- `Dependency Injection(DI)`, `Dependency Inversion Principle(DIP)`
- DIP는 IoC를 도와주는?가능케하는? 하나의 형태
- DI는 DIP를 적용법 중 하나

# DI의 종류

- Constructor Injection
- Property Injection(Setter Injection)
- Interface Injection

# 오해

- IoC, DIP가 사용된다고 해서 항상 IoC Container가 필요한 것은 아니다.

# Service Locator

- 또 다른 DIP 적용법