Saya telah melalui beberapa tutorial di Magento 2, dan ini sedikit membingungkan saya. Saya dapat melihat pada dasarnya ada dua cara dimana kita dapat membaca / menulis entitas bisnis:
Ambil Data
Menggunakan Pendekatan Pabrik
$object = $this->myFactory->create();
$object->load($myId);
Menggunakan Pendekatan Repositori
$repo = $this->myRepository();
$object = $repo->getById($myId);
Simpan Data
Menggunakan Pendekatan Pabrik
$object = $this->myFactory->create();
$object->load($myId);
$object->setData('something', 'somethingDifferent')->save();
Menggunakan Pendekatan Repositori
$repo = $this->myRepository();
$object = $repo->getById($myId);
$object->setData('something', 'somethingDifferent');
$repo->save($object);
Saya juga bisa melihat bahwa, baik repositori dan kelas pabrik dapat diinjeksi menggunakan injeksi dependensi. Ini membingungkan setidaknya bagi saya.
Kapan kita harus menggunakan pendekatan repositori dan pendekatan pabrik? Apa praktik terbaik yang perlu kita ikuti?