Magento 2 - Pourquoi Magento \ Checkout \ Model \ Cart est-il déconseillé?

32

Depuis Magento 2.1, Cart a une @deprecatedbalise. Néanmoins, il est toujours utilisé par Magento lui-même pour stocker des produits lors de ses achats. La dépréciation est-elle prévue, et si oui, et que devrions-nous utiliser à la place?

Patrick van Bergen
la source
Bienvenue sur Magento.SE! Grande question! Vous pourriez penser à réviser un peu le titre afin qu'il ne demande pas de réponse subjective. Par exemple, "Dois-je toujours utiliser?" est probablement mieux que "pourquoi a-t-il été déprécié"
philwinkle
Merci pour votre réponse, philwinkle! Cependant, @deprecated implique déjà qu'il ne devrait plus être utilisé. Je voulais juste savoir par quoi il est remplacé, et parce qu'il est toujours activement utilisé par Magento, j'ai un petit soupçon que la classe a été déconseillée par erreur. :)
Patrick van Bergen
En dehors d'un membre de l'équipe principale, la réponse ne peut pas être canonique . Mais je pense qu'en l'état, c'est une question parfaitement valable.
philwinkle
pour mémoire. dépréciation supprimée dans github.com/magento/magento2/pull/11070
M.Elwan

Réponses:

24

Je suppose que l'équipe Magento prévoit de mettre en œuvre des contrats de service pour cette classe.

Cependant à partir de 2.1 si vous vérifiez le app/code/Magento/Checkout/Apidossier, il n'y a pas (encore) de classe qui implémente un tel contrat de service.

Je suppose que cela arrivera à un moment donné et l'équipe de Magento a signalé que ce modèle serait obsolète à l'avenir. Cependant, comme je l'ai dit et comme vous l'avez dit, il est toujours utilisé dans le logiciel, vous pouvez donc continuer à l'utiliser pour l'instant.

Je pense que cette @deprecatedbalise est un drapeau similaire à celui de la load()méthode deMagento\Framework\Model\AbstractMode

Il en va de même pour la <action>balise XML qui est obsolète mais qui reste la seule option dans certains cas: http://goo.gl/laVP35 et qui est encore largement utilisée en 2.1: https://github.com/magento/magento2/search? l = xml & q = action & utf8 =% E2% 9C% 93

Raphael au pianisme numérique
la source
17

Le commit qui a déprécié le modèle de panier est c4e9a77403655646a18d4277de96429c86bd34fa avec le message

MAGETWO-51558: Marquer le modèle de chariot de caisse comme obsolète

Cela ne dit pas grand-chose, d'autant plus que c'est le seul commit qui fait référence au numéro de ticket interne "MAGETWO-51558"

Comme \Magento\Checkout\Apiil ne contient toujours pas de nouveaux contrats de service et \Magento\Quote\Api\CartItemRepositoryInterfacene peut pas non plus remplacer le modèle de chariot, je suis d'accord avec votre suspicion selon lequel il a été déprécié trop tôt.

Bien sûr, une réponse définitive ne peut être donnée que par un employé de Magento.

Fabian Schmengler
la source