В настоящий момент выходит не так много книг по PHP, поэтому я решил прочитать свежее переиздание книги PHP Cookbook от 2023 года, которую в России переводят, как "PHP. Рецепты программирования". Хотелось бы понять, что можно написать не про какую-то сферу, где применяется PHP, а именно про сам язык.
Об авторе
Эрик Манн - инженер-программист с опытом почти в два десятилетия. Он создавал масштабируемые проекты для стартапов на ранней стадии и для компаний из списка Fortune 500. Эрик часто рассказывает о архитектуре программного обеспечения, технике безопасности и передовом опыте разработки. Он регулярно уже более пяти лет пишет статьи в журнале php[architect], и больше всего ему нравится помогать новым разработчикам избегать многих ошибок, которые он совершил в своей карьере программиста.
Кратко о сути книги
Это небольшая обзорная книга на тему того, как работает современный PHP 8.2, как можно решать ежедневные задачи и к чему нужно стремиться при разработке современных приложений на PHP.
Отдельно хочется отметить тот факт, что автор призывает отказаться от процедурного стиля программирования, который можно повсеместно найти в старых проектах, в пользу использования функционального и объектно-ориентированного стиля.
Обзор содержания книги
Если вы разработчик PHP и ищете проверенные решения распространенных проблем, эта книга содержит примеры кода, которые помогут вам решить множество проблем. PHP — удивительно простой язык для работы, что объясняет, почему сегодня на нем работает более 75% веб-сайтов в Интернете. Он также невероятно снисходительно относится к ошибкам в коде, что может привести к тому, что плохие практики будут воспроизводиться годами.
Используя современные версии PHP вплоть до версии 8.2, автор Эрик Манн предлагает автономные рецепты, которые позволят вам решить проблемы, с которыми вы сталкиваетесь в повседневной работе. Вы также найдете установленные шаблоны и примеры, которым может следовать любой разработчик для решения распространенных проблем с PHP. С помощью этих рецептов вы быстро определите и решите сложные проблемы, не изобретая велосипед.
Это практическое руководство поможет вам:
Создавать эффективные приложения, состоящие из функций и объектов;
Изучить систему типов современного PHP;
Иметь понимание ключевых понятий, таких как шифрование, обработка ошибок, отладка и настройка производительности;
Изучить экосистему пакетов/расширений PHP;
Узнайть как создавать базовые веб-приложения и приложения командной строки;
Безопасно работать с файлами на машине, как в зашифрованном, так и в текстовом виде;
Получить обзор современных подходов для асинхронного программирования.
Плюсы книги:
Есть полный обзор современных фич PHP;
Автор призывает отказываться от "плохого кода" и стремиться писать хороший код (включая стрик_тайп);
Книга достаточно краткая, при этом содержит все основные понятия. Даже сложно сказать, можно ли было бы написать это короче;
Достаточно хороший обзор асинхрона в PHP: AMPHP, ReactPHP, Open Swoole, RoadRunner, Octane.
Минусы книги:
Не так, чтобы примеры кода в книге сильно отличались от официальной документации и задач уровня easy на leetcode;
Многие примеры кода достаточно тривиальные, без углубления в какие-то более сложные кейсы
Итоговое мнение
Опытный разработчик на современном стеке вряд ли найдет в этой книге что-то новое и полезное. Однако, если вы долго работали на легаси проектах на PHP 5.4, либо каких-то CMS, то эта книга даст хороший обзор, что такое современный PHP.
Можно не тратить время на поиск и чтение разных статей на тему современного PHP, когда можно все узнать из одной книги.
Интересное замечание
В этой книге приводятся примеры из Symfony, Laravel и асинхронных фреймворков. Zend (Laminas) и Yii снова считаются устаревшими фреймворками, которые больше не заслуживают упоминания.