Просто чтобы повторить важные части выше, приложения Magento 2 должны использовать официальные API Magento 2, а не Zend напрямую. Таким образом, разработчики не должны заботиться о том, на что мы опираемся.
Для исследования умов, Magento 2 использует биты из разных структур. Мы используем доступ к базе данных из Zend 1. Мы исследовали переход на Doctrine, но для Magento 2.0.0 было слишком много работы. Однако мы можем сделать это в 2.1, 2.2, 3.0 или ... (пока нет обязательств). Когда мы доберемся до этого, мы также можем передумать, использовать ли ZF1, ZF2, Doctrine и т. Д. На основе новой доступной информации. В Magento 2 также может быть файл YML (это означает, что мы используем часть Symfony). Часть установщика использовала часть ZF2 (стоит ли нам разрабатывать новое приложение для ZF1?), Но это может измениться. Мы также увидели крошечную часть Angular, которая, возможно, выглядела интересной для MV * в JavaScript.
Но как только вы посмотрите, что находится в рамках Magento, вы, вероятно, делаете не то, что нужно. Ваш код приложения не должен заботиться. Вам следует использовать «официальные» API, предоставляемые платформой Magento, чтобы мы могли изменять внутренние компоненты, не затрагивая существующие сайты или расширения клиентов. «Официально» мы собираемся задокументировать, какие API являются «поддерживаемыми» API (пока не очень хорошо) - чтобы сделать обновления более надежными, мы будем поддерживать эти API как можно более стабильными, но вносить изменения в основной код база для повышения производительности и т. д.
Примечание: я не часто заглядываю в эту область - вопросы о Magento 2 просматриваются на трекере GitHub. Мы пытаемся держать их всех там в настоящее время.