Magento 2 et contrats de services

9

Je sais qu'il y a beaucoup de sujets sur cette question mais je ne suis pas sûr de bien comprendre ..

Quand avons-nous eu besoin d'utiliser un contrat de service?

  • Remplacent-ils le CRUD effectué par Model/ ResourceModel?
  • Avions-nous besoin de créer à chaque fois un contrat de service pour chaque entité qui utilisera un tableau de données sur un module personnalisé?
  • Sont-ils vraiment intéressants pour un développement futur?
  • Pourquoi Magento utilise parfois save/ à loadpartir du modèle dans Controller / Block, et parfois non?

Je vous remercie

TaKe_Da_ShAkEr
la source
Un poste intéressant de contrats de service M2 ce
95623
Salut Sanpu et merci pour le lien :). La vision d'Alan est intéressante et maintenant, je commence à comprendre la logique du contrat de service. Il semble réorganiser toute la logique du modèle d'entreprise en les séparant des concepts de référentiel / données / gestion et constructeur. Ce n'est pas clairement expliqué, mais cela remplacera probablement l'utilisation actuelle du modèle. Qu'est-ce que tu en penses ?
TaKe_Da_ShAkEr

Réponses:

1

Fondamentalement, les contrats de service sont un ensemble d'interfaces disponibles pour que les modules déclarent des API standard. En gros, il existe deux catégories d'API, l'API de données qui expose les méthodes CRUD et l'API opérationnelle qui fait réellement quelque chose.

Les contrats de service remplissent un certain nombre de fonctions importantes, telles que:

  • Amélioration du processus de mise à niveau
  • Formaliser le processus de personnalisation
  • Modules de découplage

Maintenant, avec l'utilisation des interfaces et des API, il est beaucoup plus clair comment interagir avec les modules du système plus modulaire de Magento car ils ne communiquent que via l'API

Toutes les classes sont documentées via leurs interfaces, afin que vous sachiez exactement ce que chacune fait et comment son utilisation aura un impact sur l'ensemble de votre implémentation.

Je vous recommande fortement de suivre les principes du cours Magento sur le développement de magento que Magento fournit gratuitement jusqu'au 31/1/2017. Il couvre de manière exhaustive la vue d'ensemble du contrat de service et se décline en API Framework, API Data et API Web

Moses N. Njenga
la source
0

Les contrats de service sont très utiles dans Magento2. Ils définissent exactement les champs de données dont vous avez besoin pour une entrée. Étant donné que Magento est développé de manière à ce que les contrôleurs, les processus et les API Web consomment les mêmes référentiels et modèles, le contrat de service permet de rendre les données identiques sur tous. Il est également utile car il vous donne la possibilité d'injecter des usines et d'autres choses assez facilement.

awavi
la source