Trong Magento 1
chúng tôi đã được sử dụng để đặt các lớp học của chúng tôi trong các thư mục này
- Khối
- Người giúp đỡ
- Mô hình
- Nguồn
và sử dụng một tên lớp đơn giản mà không có bất kỳ chữ in hoa nào ở giữa tên.
Nếu chúng ta xem xét một số trường hợp trong Magento 2 Core
Người giúp việc
Địa điểm :
- \Foo\Bar\Helper
Tên :
- *.php
Ví dụ :
- \Magento\ImportExport\Helper\Report
-\Magento\Cms\Helper\Wysiwyg\Images
Quan sát viên
Địa điểm :
- \Foo\Bar\Observer
Tên :
- *.php
- *Observer.php
Ví dụ :
- \Magento\CustomerCustomAttributes\Observer\SalesOrderAddressAfterLoad
-\Magento\CustomerBalance\Observer\ProcessBeforeOrderPlaceObserver
bổ sung
Vị trí :
- \Foo\Bar\Plugin
Tên :
- *.php
- *Plugin.php
Ví dụ :
- \Magento\Catalog\Plugin\Block\Topmenu
- \Magento\PageCache\Model\App\FrontController\BuiltinPlugin
Nguồn : http://devdocs.magento.com/guides/v2.0/extension-dev-guide/plugins.html#declaring-a-plugin
Trình cấu hình
Địa điểm :
- \Foo\Bar\Model
Tên :
- *ConfigProvider.php
Ví dụ :
- \Magento\Tax\Model\TaxConfigProvider
-\Magento\Payment\Model\IframeConfigProvider
Câu hỏi của tôi là:
- Nếu có bất kỳ
good
/bad
/best
thực hành cho điều đó trongMagento 2
? - Nếu tôi muốn tạo một tùy chỉnh
DataProvider
chẳng hạn thì nó sẽ là gì?\Foo\Bar\Provider\CustomDataProvider
\Foo\Bar\DataProvider\Custom
\Foo\Bar\Model\Provider\CustomDataProvider
\Foo\Bar\Helper\Provider\CustomDataProvider
- Làm thế nào để xác định cấu trúc của tên lớp và vị trí, một thư mục ở thư mục gốc của mô-đun, trong Mô hình, trong Trình trợ giúp, v.v.?
- Có phụ thuộc vào nguồn dữ liệu / loại dữ liệu?
- Khi nào chúng ta phải thêm hậu tố vào tên lớp?
Một phần của câu trả lời cho
Virtual Types
: https://community.magento.com/t5/Magento-DevBlog/Virtual-Types-Naming-Convent/ba-p/61510