개체의 생성자가 모든 후속 작업을 담당하는 디자인을 무엇이라고 부릅니까? 이 클래스의 사용법은 단순히 인스턴스를 생성 한 다음 모든 화재와 잊어 버림을 포함합니다.이 패턴을 어떻게 부릅니 까?
바보 예 :
public class Order
{
public Order(int ammount,Product type)
{
Ammount = ammount;
Namespace.OrderManager.RegisterNewOrder(this);
Namespace.WarehouseManager.Substract(this);
Namespace.OrderManager.Invoice(this);
Namespace.DeliveryManager.Deliver(this);
.. well, you get the point;
}
// Called back later from DeliveryManager
public void OrderHasBeenDelivered()
{
//save some data to the DB, or notify the UI
}
// Called back later from OrderManager
public void OrderHasBeenCanceled()
{
Namespace.DeliveryManager.CancelDelivery(this);
}
}
... 주문 클래스의 사용 :
public void CreateOrder_click(object sender, EventArgs e)
{
new Order(50, CDs);
new Order(10, DVDs);
new Order(10, DVDs);
}
편집 :
음,이 간단한 정적을 사용 사이의 차이 메서드는 새로 생성 된 Order 객체가 생성 된 함수/스레드/객체가 아니라 여러 다른 장소에서 사용된다는 것입니다.
단순히 Order 오브젝트를 작성하고 OrderManager로 등록한 후 OrderManager는 나중에 해당 순서를 닫습니다. 내가 객체를 멀리 던지지는 않는다. 그것은 앱에 계속 존재할 것이다.
'type' 매개 변수가 ctor에서 어떻게 사용되는지 알지 못합니다. 그런 패턴의 이름을 모르지만 생성자에서 비즈니스 로직을 숨기는 것이 맘에 들지 않습니다. –