Magento2

Factory
Repository
ResourceModel

Interface Contract

Entities

Model : Business Logic

Model\Entity

Interface : DataModel

Api\Data\EntityInterface

Passif pour chargement/sauvegarde

Factory

  • Classe autogénérée

  • Création d'entités

  • Retourne Model\Entity

Préférer EntityInterfaceFactory si possible

  • Respecte Contrats de Service

  • Chargement/Sauvegarde

  • Retourne Api\Data\EntityInterface

Repository

Incomplet ?

  • Héritage Magento1

  • Niveau en dessous du Repository

  • Précision ++ (syntaxe sql)

ResourceModel

  • Facilite maintenance/évolution

  • Permet découplage des modules

  • Facilite exposition API

Contrats de service

Contrats d'interface

models can - and probably will - be refactored at some point; Api/Data/Product will not

Comme d'habitude :

Une histoire de contexte et un choix à faire

Sources

Merci de votre attention

Made with Slides.com