22 мая компания GitHub объявила, что следующая версия их API будет использовать разработанную Facebook технологию под названием GraphQL.
В итоге GraphQL может прийти на смену самому популярному на сегодняшний день типу API — REST API.
Читать дальше →
* вообще говоря это пока еще не фреймворк, а просто набор библиотек, фреймворком он станет чуть позже
Не прошло и недели с момента «безумного успеха» (тут мнения немного расходятся, конечно...) первой части нашего повествования, как пришло время выпустить вторую.
Сегодня мы продолжаем путешествие в бездонную глубину библиотеки runn/core будущего фреймворка «Runn Me!». Под катом нам встретятся следующие обитатели бездны:
- Концепция «мультиисключения» и ее реализация в библиотеке
- Понятие объекта с внутренней валидацией и эталонная реализация такого объекта
- Немного заглянем в мир валидаторов и санитайзеров (подробный рассказ о них будет позже)
- Рассмотрим реализацию объекта с обязательными полями
Вперед!
«О нет!», воскликнет читатель, утомлённый разными мини-микро-слим-фреймворками и QueryBuilder-ами и будет прав.
Нет ничего скучнее, чем очередной фреймворк на PHP. Разве что «принципиально новая» CMS
или новый дейтинг.
Так зачем же я с упорством, достойным лучшего применения, шагаю по неудобным подводным камням и выставляю на
потеху публике суд товарищей своё творение? Заранее зная, что гнев критиков, как мощное цунами обрушится на этот пост и похоронит его на самом днище Хабра?
Не знаю. Как не знал в своё время Колумб, зачем он отплывает от уютных берегов Испании. Надеялся ли он найти путь в Индию? Конечно да. Но не знал точно — доплывёт ли?
Видимо и у программистов на PHP, к которым я вот уже 13 лет себя причисляю, есть такая же внутренняя потребность — выставлять свой код и зажмуривать глаза, ожидая реакции коллег.
Что вас ждет под катом?
- Открытый исходный код, лицензия LGPL
- Код, полностью совместимый с PHP 7.0-7.2
- 100% покрытие юнит-тестами
- Библиотеки, проверенные временем в реальных проектах (и только проклятая прокрастинация мешала мне опубликовать их ранее!)
Ну и, разумеется, история изобретения очередного
велосипеда на костыльном приводе фреймворка*!
* вообще говоря это пока еще не фреймворк, а просто набор библиотек, фреймворком он станет чуть позже
Вперед!
Какое-то время я хотел убрать комментарии из своего блога; в основном, потому что здесь вообще мало комментариев, да и не хочется возиться с лишними «тормозами» от Disqus. Посмотрев на время загрузки Disqus, я был потрясён тем, что приходится терпеть посетителям сайта по моей вине (кроме тех, кто использует блокировщики вроде Privacy Badger и uBlock Origin.
Эта статья заточена под Hugo, но код легко адаптируется для любого сайта.
Что не так с Disqus?
Вот как выглядит типичный журнал запросов с
включенным Disqus.
А вот лог после
отключения Disqus.
ЧЕГО!?
Читать дальше →