Magento 2 - Por que o Magento \ Checkout \ Model \ Cart está obsoleto?


32

Desde o Magento 2.1, o Carrinho tem uma @deprecatedetiqueta. No entanto, ele ainda é usado pelo próprio Magento para armazenar produtos nas compras. A depreciação é intencional e, em caso afirmativo, e o que devemos usar?


Bem-vindo ao Magento.SE! Ótima pergunta! Você pode revisar um pouco o título para que ele não peça resposta subjetiva. Por exemplo, "Ainda devo usar?" é provavelmente melhor do que "por que foi preterido"
philwinkle

Obrigado pela sua resposta, philwinkle! No entanto, @ obsoleto já implica que não deve mais ser usado. Eu só queria saber o que é substituído e, como ainda é usado ativamente pelo Magento, tenho uma pequena suspeita de que a classe foi reprovada por engano. :)
Patrick van Bergen

Fora de um membro da equipe principal, a resposta não pode ser respondida canonicamente . Mas acho que, do jeito que está, é uma pergunta perfeitamente válida.
philwinkle

para o registro. obsoleta removida no github.com/magento/magento2/pull/11070
M.Elwan 31/03

Respostas:


24

Meu palpite é que a equipe do Magento está planejando implementar contratos de serviço para esta classe.

No entanto, a partir da versão 2.1, se você verificar a app/code/Magento/Checkout/Apipasta, ainda não há uma classe que implemente esse contrato de serviço.

Suponho que isso aconteça em algum momento e a equipe do Magento sinalizou esse modelo como obsoleto no futuro. No entanto, como eu disse e como você disse, ele ainda é usado no software para que você possa continuar usando-o por enquanto.

Acho que essa @deprecatedtag é uma bandeira semelhante à do load()método deMagento\Framework\Model\AbstractMode

O mesmo vale para a <action>tag XML que foi descontinuada, mas ainda é a única opção em alguns casos: http://goo.gl/laVP35 e ainda é amplamente usada no 2.1: https://github.com/magento/magento2/search? l = xml & q = ação & utf8 =% E2% 9C% 93


17

A confirmação que reprovou o modelo do carrinho é c4e9a77403655646a18d4277de96429c86bd34fa com a mensagem

MAGETWO-51558: Marcar o modelo do carrinho de check-out como obsoleto

Isso não diz muito, especialmente porque esse é o único commit que faz referência ao número do ticket interno "MAGETWO-51558"

Como \Magento\Checkout\Apiainda não contém novos contratos de serviço e \Magento\Quote\Api\CartItemRepositoryInterfacetambém não pode substituir o modelo de carrinho, concordo com sua suspeita de que ele foi preterido muito cedo.

Obviamente, uma resposta final só pode ser dada por um funcionário da Magento.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.