Techniken in Magento 2

download Techniken in Magento 2

If you can't read please download the document

Transcript of Techniken in Magento 2

Format des Titeltextes durch Klicken bearbeiten

Format des Gliederungstextes durch Klicken bearbeitenZweite GliederungsebeneDritte GliederungsebeneVierte GliederungsebeneFnfte GliederungsebeneSechste GliederungsebeneSiebte Gliederungsebene

Techniken in Magento 2

Daniel Rose

Magento Developer seit 2010

Zertifiziert seit 2014

Leiter der Magento-Entwicklung
(brandung GmbH & Co. KG)

David Verholen

Magento Developer seit 2011

Zertifiziert seit 2015

Magento-Entwickler
(brandung GmbH & Co. KG)

Inhalt

Composer

Service Contracts

Dependecy Injection

Code Generation

Plugins

Inhalt

Composer

Service Contracts

Dependecy Injection

Code Generation

Plugins

Composer

Module gekapselt in einem Ordner

M1

M2

Composer

Component Registrar

Composer

Autoloading

\Bragento2\Slider\Block\Slider

Inhalt

Composer

Service Contracts

Dependecy Injection

Code Generation

Plugins

Service Contracts

Set an PHP-InterfacesData InterfaceSchtzt die Datenintegritt

Service InterfacesBusinesslogik wird nach auen versteckt

Quelle: http://devdocs.magento.com/guides/v2.0/extension-dev-guide/service-contracts/service-contracts.html

Inhalt

Composer

Service Contracts

Dependecy Injection

Code Generation

Plugins

Dependency Injection

Entwurfsmuster

Reglementiert die Abhngigkeiten eines Objekts zur Laufzeit

Lose Kopplung

Constructor Injection

ObjectManager & di.xml

Definitionen in di.xmlPreference

Type

Virtual Types

Demonstration

Inhalt

Composer

Service Contracts

Dependecy Injection

Code Generation

Plugins

Code Generation

FactoryErstellung von Non Injectables\Magento\Catalog\Api\Data\ProductInterfaceFactory

ProxyClass Wrapper zur Verzgerung der Objektinstantiierung bis zur ersten Benutzung\Magento\Catalog\Model\Session\Proxy

(Plugin)

Factory Beispiel

Proxy Beispiel

Fr \Magento\Catalog\Api\ProductRepositoryInterface

Fr jede public Methode der Originalklasse wird eine Methode in der Proxy Klasse erstellt.

Ein Objekt der Originalklasse wird beim ersten Aufruf einer Methode erzeugt

Inhalt

Composer

Service Contracts

Dependecy Injection

Code Generation

Plugins

Plugins

Interceptor PatternEntwurfsmuster zur gezielten Erweiterung / Manipulation des Verhaltens einer Methode

Plugins

VorraussetzungenKlasse wird ber den Magento ObjectManager geladen

Methode muss public und darf nicht final sein

Best Practices@api annotation

Plugins

\Magento\Customer\Model\ResourceModel\Visitor

\Magento\Catalog\Model\Plugin\Log

Interceptor Beispiel

Vielen Dank