Предлагаем вашему вниманию очередную подборку с ссылками на новости и материалы.
Приятного чтения!
Новости и релизы
- Выпущен PHP 5.5.0 Alpha4 — Команда разработчиков PHP анонсировала выход уже четвертой альфа версии PHP 5.5. Данный релиз включает как исправления ошибок, так и парочку новых возможностей, среди которых: получение имени класса с помощью ключевого слова «class» (ClassName::class), подробнее тут; добавлен класс DateTimeImmutable. Полный список изменений тут. Стоит заметить, что это последний альфа релиз PHP 5.5 — с этого момента начинается работа над бетами и первая из них ожидается 7 февраля. В бета версиях не будут добавлены новые возможности, так что на данный момент уже можно с уверенностью говорить о том, каким будет PHP 5.5. Аксессоры мы не увидим.
- Релизы PHP 5.4.11 и PHP 5.3.21 — Также обновились и текущие стабильные ветки. Релизы включают только исправления ошибок. Со списком изменений можно ознакомиться тут.
- Laravel 4 Beta 1 — О четвертой версии фреймворка уже написано немало, и вот наконец-то первая бета. Документация тут, код тут.
PHP
- Функциональное программирование на PHP — Отличный пост, в котором подробно описано текущее состояние реализации функциональной парадигмы в языке PHP. Приведен пример использования подсчета общей стоимости корзины покупок в функциональном стиле.
- Трейты: хорошо или плохо? — О трейтах уже писали много. Еще одна статья в копилку, в которой рассмотрены достоинства и недостатки новой возможности языка PHP.
- Почему 2013 — это год PHP? — Прошлый год для PHP был определенно успешным и продуктивным, а в этом посте автор сначала рассказывает о проблемах, с которыми сталкиваются разработчики на PHP и делает прогноз на 2013 год.
- Парсинг и выполнение PHP кода на Haskell, 2 — Очень интересный эксперимент автора описан им в двух постах. Подробно рассказано обо всех ключевых моментах создания: в первой части о парсинге PHP кода, а во второй о, собственно, выполнении. Код получившегося инструмента доступен на Github.
Материалы для обучения
- Реализация «издатель-подписчик» на Websockets, Ratchet, Silex и Redis — Небольшой, но интересный пост о создании веб сервиса реального времени, который может быть использован через вебсокеты. Перед автором стояла задача реализовать некоторый бэкенд для iOS приложения, и очевидным решением казалось создать REST сервис, но такое решение обладало рядом недостатков. В результате автор реализовал простой инструмент для обработки запросов через вебсокеты с помощью Ratchet, Redis и Silex. Код и демо.
- PSR? — Хороший пост с обзором всех стандартов PSR. В последнее время было много критики в сторону PSR, особенно после принятия PSR-3, но хватает и постов в защиту, как, например, этот и особенно этот.
- Autoload path depth insanity — В своем посте автор высказывает мысли по поводу стандарта PSR-0 и, в связи с появлением Composer, говорит о необходимости внести изменения в стандарт. Список предложений прилагается.
- Программирование с Anthony — Посредник — Активный деятель PHP-сообщества Anthony Ferrara продолжает свою серию видеозаписей о программировании. В очередном видео он рассказывает о шаблоне проектирования Посредник (Mediator). Другие видео из серии доступны тут.
- 5 знаков свидетельствующих о том, что ваш сервис не RESTful — Хотя REST не панацея, когда речь идет о построении API, но если вы все-таки реализовываете RESTful сервис, то делайте это правильно.
- Node.js для PHP разработчиков, 2, 3, 4 — Если вы PHP разработчик и задумываетесь о том, чтобы переключиться на что-нибудь другое, то подумайте о Node.js. В серии статей автор пишет о базовых принципах разработки на Node.js, и, что особенно полезно, дополняет посты примерами реализации одних и тех же вещей на Node.js и на PHP.
- MongoDB's aggregation framework — В версии 2.2 в MongoDB бы представлен aggregation framework, который предоставляет мощные и гибкие возможности для решения задач агрегации данных. Пост представляет собой введение в agregation framework с примерами на PHP.
- Улучшаем рабочий процесс на PHP с помощью пространств имен, Composer, PHPUnit — Видео туториал об использовании столь полезных инструментов. Если вы еще этого не делаете, то самое время начать.
- Забегаем вперед в вопросах безопасности путем наблюдения за соседями — Написать пост автора подбила новость об обнаруженной не так давно критической уязвимости в Ruby On Rails (подробный анализ). Проведя исследование, автор обнаружил подобную уязвимость в парсере YAML в Symfony. И хотя ошибка уже исправлена, никто не застрахован, поэтому автор призывает быть бдительным и внимательно следить за обнаруженными ошибками не только в инструментах, используемых вами, но и в их аналогах.
- LUCID — Серия статей а разработке по принципам LUCID: L — логирование, U — модульное тестирование, C — конфигурироемость, I — изолированность, D — документированность.
- Lithium: получаем данные из базы — Небольшая статья, в которой описана работа с базой данных во фреймворке Lithium.
- Реализовываем PSR-3 с помощью log4php — Туториал о том, как реализовать недавно принятый стандарт с помощью отличного инструмента логирования от Apache.
- Хэширование паролей на PHP — Повторение — мать учения. Еще один гайд по безопасному хэшированию паролей. А вот тут туториал по использованию ZendCrypt из ZF2 для решения тех же задач.
- Zend Framework 2 Event Manager — Хорошее руководство для того, чтоб начать работать c Event Manager в ZF2. Автор сначала делает обзор принципов лежащих в основе: паттерн проектирования Наблюдатель, событийно-ориентированное программирование. Затем касается конкретных примеров использования менеджера событий.
- Двухфакторная аутентификация от Google на PHP — Небольшой пост о реализации двухфакторной авторизации используя библиотеку GAuth.
- Можно так просто взять и скрыть информацию — Хабрапост, в котором описана реализация стенографического алгоритма на PHP — скрываем информацию прямо в изображении.
- Использование PDO — Подробный туториал посвященный PDO. Если вы все еще используете расширение Mysql, то самое время о нем забыть и начать использовать современные интерфейсы доступа к базам данных.
Ссылка на предыдущий выпуск.
Материал подготовили dbritan, nesttor и pronskiy
Автор: alexzfort