Magento 2 - Warum ist Magento \ Checkout \ Model \ Cart veraltet?

32

Seit Magento 2.1 hat Cart einen @deprecatedTag. Trotzdem wird es von Magento selbst immer noch verwendet, um Produkte beim Einkauf aufzubewahren. Ist die Abschreibung beabsichtigt und wenn ja, und was sollten wir stattdessen verwenden?

Patrick van Bergen
quelle
Willkommen bei Magento.SE! Gute Frage! Möglicherweise überlegen Sie, den Titel ein wenig zu überarbeiten, damit Sie nicht nach einer subjektiven Antwort gefragt werden. Zum Beispiel "Soll ich noch verwenden?" ist wahrscheinlich besser als "warum wurde es veraltet"
Philwinkle
Danke für deine Antwort, philwinkle! @Deprecated impliziert jedoch bereits, dass es nicht mehr verwendet werden sollte. Ich wollte nur wissen, durch was es ersetzt wird, und da es von Magento immer noch aktiv verwendet wird, habe ich den kleinen Verdacht, dass die Klasse versehentlich veraltet ist. :)
Patrick van Bergen
Außerhalb eines Kernteammitglieds kann die Antwort nicht kanonisch beantwortet werden. Aber ich denke, so wie es aussieht, ist es eine vollkommen berechtigte Frage.
Philwinkle
für die Aufzeichnung.
Verfall

Antworten:

24

Ich vermute, dass das Magento-Team plant, Serviceverträge für diese Klasse umzusetzen.

Ab 2.1 app/code/Magento/Checkout/Apigibt es jedoch (noch) keine Klasse, die einen solchen Servicevertrag implementiert, wenn Sie den Ordner überprüfen .

Ich gehe davon aus, dass dies irgendwann passieren wird und das Magento-Team dieses Modell als zukünftig veraltet markiert hat. Wie ich schon sagte und wie Sie sagten, wird es immer noch in der Software verwendet, so dass Sie es vorerst immer noch verwenden können.

Ich denke, dieses @deprecatedTag ist ein ähnliches Flag wie das für die load()Methode vonMagento\Framework\Model\AbstractMode

Gleiches gilt für das XML- <action>Tag, das veraltet ist, aber in einigen Fällen immer noch die einzige Option ist: http://goo.gl/laVP35 und wird in 2.1 weiterhin häufig verwendet: https://github.com/magento/magento2/search? l = xml & q = action & utf8 =% E2% 9C% 93

Raphael bei Digital Pianism
quelle
17

Das Commit, das das Wagenmodell veraltet hat, lautet c4e9a77403655646a18d4277de96429c86bd34fa mit der Nachricht

MAGETWO-51558: Kasse als veraltet markieren

Dies sagt nicht viel aus, zumal dies das einzige Commit ist, das auf die interne Ticketnummer "MAGETWO-51558" verweist.

Da \Magento\Checkout\Apinoch keine neuen Serviceverträge enthalten sind und \Magento\Quote\Api\CartItemRepositoryInterfaceauch das Wagenmodell nicht ersetzt werden kann, stimme ich Ihrer Vermutung zu, dass es zu früh veraltet ist.

Eine endgültige Antwort kann natürlich nur ein Magento-Mitarbeiter geben.

Fabian Schmengler
quelle