Data: 1 de junho de 2015 (dada a natureza mutável do Magento 2)
No Magento 2, você pode configurar um "tipo virtual" no di.xml
arquivo de configuração de um módulo . Esses tipos virtuais permitem alterar os argumentos de uma dependência injetada específica.
No código principal do Magento 2, parece haver duas convenções de nomenclatura para tipos virtuais. No primeiro, um tipo virtual tem um nome que parece idêntico a um nome de classe PHP real.
#File: app/code/Magento/CatalogRule/etc/di.xml
<virtualType name="Magento\Catalog\Pricing\Price\Pool" ...
no segundo, uma string simples, sem barra invertida, é usada
#File: app/code/Magento/CatalogSearch/etc/di.xml
<virtualType name="advancedSearchFilterList" ...
Existe alguma diferença prática nas duas convenções de nomenclatura acima? ou seja, o nome que você escolheu para virtualType
impactar seu comportamento ou é apenas uma sequência globalmente única que identifica o tipo para que você possa usá-lo mais tarde.
fonte
Respostas:
O nome do tipo virtual é apenas uma sequência globalmente exclusiva. Não há diferença de comportamento para tipos virtuais com nomes diferentes. Nós simplesmente não temos uma convenção de nomenclatura forte para tipos virtuais. Pessoalmente, prefiro a segunda abordagem porque torna óbvio que esse é um tipo virtual, não uma classe real.
fonte