Có một danh sách các mẫu thiết kế được sử dụng trong Magento trên Stack Overflow
Từ bài viết:
Những điều hiển nhiên là:
Nhà máy:
$product = Mage::getModel('catalog/product');
Người độc thân:
$category = Mage::getSingleton('catalog/session');
Đăng ký:
$currentCategory = Mage::registry('current_category');
Xem người trợ giúp:
Mage::helper('core');
Nguyên mẫu:
Mage:getModel('catalog/product')->getTypeInstance();
Nhóm đối tượng:
$id = Mage::objects()->save($object);
$object = Mage::objects($id);
Lặp lại:
Mage::getModel('catalog/product')->getCollection();
Sự kiện / Người nghe:
Mage::dispatchEvent('model_load_before', $params);
BIÊN TẬP
Hồ sơ hoạt động
$product->save()
$product->getName()
Đối tượng rỗng
$collection->getFirstItem()
Tải chậm - bộ sưu tập được tải khi lặp
Ngoài ra còn có 5 bài viết trên blog của Ryan Street về MVC, Front Controller, Factory, Singleton và Registry trong Magento
Chỉnh sửa
Tôi có thể thêm rằng Magento 'singleton' là giả đơn hơn. Đó là sự kết hợp của 'Factory' vì Mage :: getSingleton () là một nhà máy và 'Registry' vì bên trong getSingleton()
phương thức này được gọi là
self::register($registryKey, self::getModel($modelClass, $arguments))