Баннер мобильный (1) Пройти тест

PSR

Глоссарий

23 марта 2023

Поделиться

Скопировано

Содержание

    PSR (PHP Standards Recommendations) — это набор рекомендаций по программированию на языке PHP. Основное назначение — предоставить проверенные общие концепции, чтобы сделать разработку простой и удобной, повысить надежность и работоспособность продуктов.

    Зачем нужен PSR

    • Делает код единообразным.
    • Упрощает совместную работу над проектом или изменение чужого продукта.
    • Поддерживает совместимость между программными продуктами на PHP.
    • Повышает прозрачность разработки и тестирования, надежность и безопасность продуктов.

    Обязательно ли  осваивать PSR

    В сокращении PSR есть слово «стандарт», но пока это список рекомендаций. Соблюдать их или нет — решение разработчика. Он может писать код, используя свой стиль и технические решения. В то же время в среде профессиональных программистов знание и соблюдение PSR — негласное правило. Особенно если речь идет о совместной работе над крупными проектами. Это требование  предъявляется как к соискателям, так и к уже работающим сотрудникам. 

    Виды стандартов PSR

    Стандарты PSR поделены на части. Каждый содержит информацию о том, как нужно выполнять задачи. Например, ставить переносы строк, называть переменные, реализовывать автозагрузку. За каждую часть отвечает свой стандарт. Каждый начинается с аббревиатуры PSR, после которой идет номер. Например, PSR-1 или PSR-4.

    Автозагрузка классов

    Решает проблему импорта описаний объектов.

    • PSR-0. Самый первый стандарт, принятый в 2010 году. Упростил присвоение имен файлам, упорядочил и привел в единый вид структуру каталогов. Сейчас считается устаревшим.
    • PSR-4. Пришел на смену PSR-0 в 2013 году. Может использоваться как его полная замена или дополнение. Благодаря PSR-4 части и компоненты одного фреймворка или библиотеки можно использовать в других проектах. Сегодня этот стандарт используется по умолчанию в Composer — пакетном менеджере уровня приложений для PHP.

    Стили кодирования

    Упрощают понимание кода, написанного другими авторами, ускоряют разработку совместных проектов, доработку и поддержку чужих продуктов.

    • PSR-1. Основной стандарт кодирования. В нем указаны правила использования тегов PHP, кодировки файлов, разделения мест объявления класса, функции и их использования и пр.
    • PSR-2. Руководство по стилю программирования, которое дополняет и объясняет стандарт PSR-1. В настоящее время считается устаревшим.
    • PSR-12. Дополнение к PSR-1. Перечисляет правила и требования к форматированию кода PHP.

    Интерфейсы

    Регулируют и унифицируют выполнение однотипных функций.

    • PSR-3. Стандартизирует и упрощает протоколирование — запись лог-файлов с данными о всех событиях.
    • PSR-6/16. Позволяет стандартно сохранять и извлекать данные из кэша с помощью унифицированного интерфейса.
    • PSR-11. Стандартизирует управление зависимостями кода, которые появляются при использовании сторонних компонентов.
    • PSR-13. Облегчает разработку и использование прикладных программных интерфейсов (API).
    • PSR-14. Помогает свободно использовать библиотеки и компоненты в различных приложениях и средах.

    HTTP

    Упрощает разработку веб-приложений, обеспечивает их взаимодействие с сервером и клиентом.

    • PSR-7. Набор интерфейсов для фреймворков, позволяющих программистам писать повторно используемый код.
    • PSR-15. Стандартизирует обработку HTTP-запросов, задает правила для компонентов промежуточного ПО HTTP-сервера.
    • PSR-17. Определяет работу для фабрик (шаблонов проектирования), на которых создаются HTTP-объекты, совместимые с PSR-7.
    • PSR-18. Унифицирует отправку HTTP-запросов и получение HTTP-ответов, делает библиотеки удобнее для повторного использования, уменьшая число зависимостей и конфликтов версий.

    Как разрабатывается PSR

    PSR появился в 2010 году. Его разработала PHP Framework Interop Group (PHP-FIG) — независимая экспертная группа программистов, авторов фреймворков ReactPHP, Composer, Laminas, Joomla, Magento и т.д. При создании они вдохновлялись Java Community Process, регламентирующим программирование на Java. Разработка каждого стандарта происходит в несколько этапов:

    • один или несколько авторов создают предварительный проект стандарта, финансируемый спонсором;
    • координатор организует проверку другими участниками PHP-FIG и голосование по его статусу;
    • если в предложенном проекте были обнаружены серьезные ошибки, он отправляется на доработку, если нет — принимается остальными участниками PHP-FIG.

    В зависимости от стадии разработки проекту присваиваются статусы:

    • Draft — черновой вариант, еще не прошедший проверку или отправленный на доработку;
    • Accepted — вариант, успешно прошедший проверку и принятый на голосовании как официальный стандарт;
    • Abandoned — проект, разработка которого временно или полностью прекращена;
    • Deprecated — ранее принятый стандарт, который устарел и был заменен более совершенной версией.

    Процесс разработки и принятия новых PSR-рекомендаций можно отслеживать на официальном сайте PHP-FIG. Там же есть информация об авторах, координаторах и спонсорах.

    Сейчас наиболее востребованы стандарты PSR, связанные со стилями написания кода и автозагрузкой классов. Рекомендации, отвечающие за выполнение более специфических задач, применяются реже. Тем не менее знание стандартов PSR — конкурентное преимущество в веб-программировании. 

    Поделиться

    Скопировано

    0 комментариев

    Комментарии