Magento 2: який стан М2 щодо відповідності PSR?


9

Отже, згідно з офіційною документацією , я розумію, що Magento 2 відповідає PSR-1 і PSR-2.

Мені цікаво, чи Magento 2 відповідає (чи буде) сумісним з іншими ?

  • PSR-3: Інтерфейс реєстратора
  • PSR-4: Стандарт автоматичного завантаження
  • PSR-6: Інтерфейс кешування
  • PSR-7: HTTP-інтерфейс повідомлення

Очікувана відповідь могла б також розглянути проект ПДР

Відповіді:


11
  • PSR-3 вже використовується (з Monolog як реалізація за замовчуванням)
  • PSR-4 вже використовується (через композитора)
  • PSR-6 не підтримується, і я не знаю, що не планую цього робити, але є мостова реалізація: https://github.com/EcomDev/magento-psr6-bridge
  • PSR-7 не підтримується, а враховуючи поточний стан договорів на обслуговування запитів / відповідей, навряд чи колись буде.

    Я спробував побудувати сумісну реалізацію запиту / відповіді на PSR-7 на недавньому Hackathon і виявив, що в даний час неможливо справедливо замінити основну реалізацію. Я поговорив з головним архітектором Антоном Крилом про це, і вони знають про це, але реконструкція ще не планується і точно не відбудеться перед Magento 2.4. У більшості випадків це не стосується більшості користувачів.


Про можливий відповідний проект PSR:

  • PSR-11 (Container Interop) було б приємно бачити, але я побоююся, що менеджер об'єктів Magento занадто спеціалізований. Знову ж таки, я не знаю планів і, мабуть, занадто рано спекулювати. Оновлення: PSR-11 було прийнято, але я все ще не вірю, що Magento має сенс, за винятком випадків, коли вони хочуть підтримати інтеграцію не-Magento пакетів, що постачаються з власним сумісним PS-контейнером PSR-11.
  • PSR-14 (Event Manager) також занадто новий, щоб нічого не говорити, але Magento отримав би користь від цього IMHO. Будемо сподіватися, що для затвердження цього не знадобиться ще 5 років. Оновлення: Жодна активність щодо PSR-14 у списку розсилки та Github з 2016 року, тому, схоже, це не рухається вперед після драми PHP FIG минулого року, де група майже розпалася.

Мені було відомо, що PSR-3 і 4 використовуються в M2, однак чи повністю M2 відповідає цим? Я майже впевнений, що це не більше і не відповідає «кіндофу».
Рафаель у цифровому піанізмі

3
чудова відповідь, а як щодо PSR-8?
Девід Маннерс

1
AFAIK усіх класів, які використовують реєстратор, очікує інтерфейс Psr \ Log, так що це повністю сумісно. А оскільки використовується автозавантажувач композитора, відповідність PSR-4 поставляється безкоштовно.
Фабіан Шменглер

@DavidManners доступний лише як реалізація спільноти;)
Фабіан Шменглер

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.