Plugin ada di mana-mana karena dimungkinkan untuk mengubah / mengganti perilaku metode publik apa pun dalam sistem. Kustomisasi harus dilakukan menggunakan plugin untuk metode / kelas publik yang ditandai dengan @api
anotasi (stable public API) bila memungkinkan. Pendekatan semacam itu menjamin bahwa kustomisasi akan tetap berfungsi setelah rilis Magento baru. Selain before
/ after
plugin yang disebutkan dalam pertanyaan, dimungkinkan untuk membuat around
plugin untuk menggantikan perilaku asli.
Di sisi lain, pengamat adalah mekanisme perpanjangan warisan yang diwarisi dari Magento 1, sangat terbatas dan harus dihindari jika memungkinkan. Namun, tidak seperti plugin, mereka dapat memberikan titik ekstensi di dalam metode yang dilindungi / pribadi.