모듈 A와 B가 있습니다. 모듈 A의 데이터베이스 내용을 수정하면 모듈 B의 데이터도 함께 수정되어야 합니다. 모듈 A는 모듈 B의 일부 데이터도 읽을 수 있습니다.
모듈 간의 결합을 최소화하도록 설계하는 방법은 무엇입니까?
모듈 A와 B가 있습니다. 모듈 A의 데이터베이스 내용을 수정하면 모듈 B의 데이터도 함께 수정되어야 합니다. 모듈 A는 모듈 B의 일부 데이터도 읽을 수 있습니다.
모듈 간의 결합을 최소화하도록 설계하는 방법은 무엇입니까?
고객을 A로, 주문을 B로 간주합니다. 이 예에서는 B의 값이 수정됩니다.
$customer = Customer::findOne(123);
$order = new Order();
$order->subtotal = 100;
// ...
// Order에서 "고객" 관계를 정의하는 속성 설정
$order->customer_id = $customer->id;
$order->save();
비즈니스 로직을 처리하기 위해 서비스 계층을 추가합니다.
모듈 간 호출 문제는 발생하지 않습니다. 서비스 계층은 모듈과 아무 관련이 없기 때문입니다.