如何将类图(关联关系)转换为代码

时间:2016-08-09 17:55:46

标签: php oop

我计划在我的电子商务网站项目中使用类图。我在OOP中有很好的想法,但有一些我不熟悉它的主题,例如类图中的关联关系,我知道该主题的基本和简单的例子。但我想在实际例子中使用它。

my class diagram

这是我的类图示例,我想了解我必须对ORDER类和CUSTOMER类做什么,如何将ORDER类与Customer类关联起来。我真的很困惑,想解释这个问题。

1 个答案:

答案 0 :(得分:1)

客户有订单,因此您向orders添加Customer媒体资源:

class Customer {

    protected $orders;

    public function addOrder(Order $order)
    {
        $this->orders[] = $order;
    }
}

Customer需要Order,因此将其添加为构造函数参数,该参数管理关系的另一面:

class Order {

    protected $customer;

    public function __construct(Customer $customer)
    {
        $this->customer = $customer;
        $customer->addOrder($this);
    }
}

要确定这些事情,只要大声说出关系:

  • “一个客户有很多订单”热潮,一系列客户订单。
  • “订单属于客户”繁荣,订单中的客户财产
  • ...