Tôi đã đọc một số bài viết về sự khác biệt giữa 3 mối quan hệ này và tôi nghĩ rằng tôi nhận được điểm.cách liên kết, tập hợp và sáng tác được viết như thế nào?
tôi chỉ tự hỏi, tất cả những văn bản này có giống nhau khi mã hóa không?
câu hỏi 1: tất cả 3 chỉ là giá trị của loại đối tượng trong biến mẫu?
class A {
public $b = ''
public function __construct($object) {
$this->b = $object // <-- could be a association, aggregation or a composition relation?
}
}
câu hỏi 2: nó có phải là một biến mẫu hay nó có thể là biến tĩnh không?
class A {
public static $b = '' // <-- nothing changed?
public function __construct($object) {
$this->b = $object
}
}
câu hỏi 3: Có sự khác biệt về nơi đối tượng được tạo không?
tôi có xu hướng nghĩ rằng đối tượng thành phần được tạo ra bên trong đối tượng:
class A {
public $b = ''
public function __construct() {
$this->b = new Object // is created inside the object
}
}
và tập hợp/liên kết được chuyển qua một constructor hoặc phương pháp khác:
class A {
public $b = ''
public function __construct($object) { // passed through a method
$this->b = $object
}
}
câu hỏi 4: Tại sao/khi điều này là quan trọng cần biết. tôi có phải bình luận một đối tượng bên trong một mối quan hệ khác của nó về hoặc làm bạn làm điều đó trong một sơ đồ UML?
ai đó có thể làm sáng tỏ những câu hỏi này.
cảm ơn!
để ngôn ngữ không thể diễn giải mối quan hệ giữa 2 đối tượng. nó chỉ được hiển thị trong sơ đồ UML để các lập trình viên hiểu được mối quan hệ giữa các đối tượng đó là gì? tôi đã tự hỏi liệu có một cách cụ thể để mã hóa các mối quan hệ này không, nhưng có vẻ như không phải như vậy. các mối quan hệ này sẽ được nhập vào mã dưới dạng nhận xét hay chỉ trong UML? –