Если вы узнали эти несколько строчек кода ниже, значит потенциально вы в тренде последних лет развития PHP.
$client = new \Joli\ArDrone\Client(); // use API service (see below) $client->start();
PHP-ar-drone является портом node-ar-drone, который позволяет пользователю управлять Parrot AR Drone на PHP. Пару лет назад, когда Адриен Баптист демонстрировал эту технологию, это могло показаться шюткой, но не сегодня.
Известные личности в мире PHP и не очень известные, многие сейчас в интернете обсуждают три основных темы – это PHP 7 против HHVM, асинхронное программирование с ReactPHP и PSR-7, а также микрофреймворки как middleware.
Во многом, споры о будущем PHP активизировались с появлением “прямого конкурента” движку PHP Zend Engine. Таким конкурентом стал HHVM — виртуальная машина для компиляции PHP кода в машинный, основанная на JIT, которая была разработана Facebook для решения все возрастающих нагрузок на сервера. Добившись повышения производительности удалось увеличить трафик на 500-600 процентов в сравнении с популярными версиями PHP на Zend 2. После чего, HHVM был отдан в свободное пользование в первую очередь сообществу WordPress. Именно это заставило основателей Zend Engine воспринимать HHVM, как прямого конкурента и к декабрю 2015-го выкатить 3-ю версию движка для PHP 7.
Советую прочитать обзор по результатам тестирования PHP разных версий в сопоставлении с HHVM здесь.
Хоть на самом деле конкуренцией в прямом смысле здесь и не пахло, сообщество PHP заметно оживилось и в короткие сроки было сделано много из того что планировалось долгие годы. Сегодня это проявляется в 100%-м увеличении производительности PHP 7 по сравнению со всеми 5-ми версиями. Также заметно возрос интерес к асинхронным возможностям PHP и использование React техногий на ряду с интергацией PSR 7 в популярных фреймворках.
Я выбрал одни из самых емких цитат известных PHP гуру на Reddit и Quora чтобы как-то подытожить рефлексии на тренды и прогнозы, и приведу их ниже.
Адам Englander, инджениринг директор LaunchKey, Inc выразился так:
«В 2016 году мы будем видеть все больше и больше совместимости между фреймворками. Symfony, Laravel и Drupal (CMS), это только начало. Благодаря PSR-7, также будут становиться более распространенным фреймворки, основанные на концепции middleware. 3-я версия Slim Framework и Zend Expressive оба самые настоящие middleware фреймворки. Это новая эпоха в PHP с принципом взаимодействия в самой его основе.
»Мы должны также видеть рост асинхронного программирования, в частности, благодаря icicle.io. Команда разрабатывающая icicle.io прошла долгий путь, чтобы сделать асинхронное программирование более доступным с использованием Promises и Generators, во многом схоже с ECMAScript 2015 в JavaScript.
«Мой последний прогноз на 2016 год будет основываться на предыдущем предсказании. Вы начнете видеть некоторое движение на уровне реальных аппаратных средств, разработками Интернет вещей (IoT) в PHP. С действительно асинхронно программируемыми фреймворками, использующими преимущества асинхронного input/ output вы сможете писать PHP приложения, которые с легкостью будут получать инпут на Raspberry Pi, Intel Edison и других устройствах IoT, работающих под управлением операционных систем Linux ».
Рафаэль Dohms, создатель Amsterdam PHD, также сказал:
«Я думаю, что это будет интересный год для PHP. Помимо запуска PHP 7, дающего прыжок в производительности, который мы видели в HHVM в последние годы, что само по себе вдохнуло новую жизнь в существующие платформы, а также помогло многим компаниям сэкономить на инфраструктуре, фактор, который повлияет на дальнейшее развитие, это PSR -7.
»PSR -7, стандарт для HTTP сообщений, принес с собой возможность создания решений в самых разных формах. В первую очередь он обратил много внимания и показал простоту использования патерна Middleware. Это уже позволяет PHP следовать трендам, таким, как мы видим в сообществе Node.js в создании систем, использующих middleware.
" Zend Expressive является отличным примером очень небольшой реализации этой модели, которая в свою очередь позволяет нам отойти от монолитных структур (мы делали это в течение 4-5 лет) и действительно начать «составление» решения из множество мелких и смешанных блоков.
“ Это новое дыхание для микро-фреймворков и микро-библиотек, тенденции, которые мы уже видели. По крайней мере, для меня будущий тренд основан именно на этих, более компонентных фреймворках, и решений, созданных из склейки частей нескольких фреймворков вместе, всех вместе наслаивающихся поверх тонкой реализации HTTP в значительной степени на основе PSR-7 и middleware.”
Мое личное мнение относительно трендов в этом году немного расходится со всем выше сказаным, поскольку тренд становится таковым, только тогда, когда технология, 7-я версия PHP, ReactPHP либо даже HHVM, “попадает в массы”, то есть поглощается главным пользователем. Но мы знаем, что по статистике главный пользователь – это большинство, то есть маленькие проекты на WordPress, Drupal, Magento, трафик которых и нагрузка на сервера довольно редко превышает нормы допустимого.
С другой стороны, освоить и справиться со сложной конфигурацией например HHVM сможет далеко не каждый разработчик WordPress. Или например, заставить своего хостинг провайдера инсталировать 7-ку на вашем сервере либо shared хостинге – задача, сомнительного характера для любого разработчика средней руки. Само-собой разумеется, что более крупные проекты, которые формируют меншинство, вполне практично используют финансовые возможности в решении вопросов с трафиком, закупая и оборудуя по своим нуждам сервера. И конечно же, только самые большие компании обычно имея достаточную экспертную базу разумно используют финансовые рычаги оптимизируя технологии а не сервера.
Поэтому трендом в этом году, по моему скромному мнению может стать технология на которую меньше обращают внимания сегодня, а именно Phalcon + Zephir. Это как раз та технология которая дает большой прыжок в скорости, а в простоте использования выглядит привлекательней любого современного фреймворка.
Посмотрите краткое видео о том как за 15 минут с Phalcon можно создавать приложения:
Как видите для пользователей Ubuntu установка Phalcon сложна ровно настолько:
$ sudo apt-add-repository ppa:phalcon/stable $ sudo apt-get update $ sudo apt-get install php5-phalcon
Установка Zephir:
$ git clone https://github.com/phalcon/zephir $ cd zephir $ ./install -c
Предварительно устанавливаем компилятор несколько пакетов для PHP:
$ sudo apt-get update $ sudo apt-get install git gcc make re2c php5 php5-json php5-dev libpcre3-dev
И вот мы уже не просто готовы за 15 минут создать приложение-опросник, но и, для простоты примера, написать свой калькулятор для подсчета голосов в приложении:
namespace Myframework; class Calculator { public function add(int a, int b) { return a + b; } }
Для PHP разработчика здесь все довольно по домашнему, просто главное что следует помнить – уточняем типы данных для компилирования(можно использовать декларирование либо статически прописывать int, bool, char).
Говорим Зефиру bin/zephir compile чтобы он скомпилировал для нас икстеншн в C, и затем возвращаем его в среду PHP с помощью нескольких простых команд:
$ cd ext/ $ phpize $ ./configure $ make $ sudo make install $ echo "extension=/usr/lib/php5/20100525/myframework.so" | sudo tee -a /etc/php5/cli/conf.d/myframework.ini
У нас готово С расширение для Phalcon! Тестируем:
$ php -a Interactive mode enabled php > $calc = new Myframework\Calculator; php > var_dump($calc->add(2, 1)); int(3)
Кого уже заинтересовала эта магия, можете углубиться в документацию здесь.
Инновационно в Phalcon даже не то, что фреймворк становится С расширением для вашей машины, но то, что Zephir дает любому PHP разработчику супер-силу расширять функционал фреймворка на родном языке.
И это ненавязчиво возвращает нас концепции тренда описанной в начале этой статьи, когда PHP разработчик получает билет в мир IoT, и с комфортом въезжает в него на своем слоне 🙂
Это захватывает, а то что захватывает, имеет все предпосылки стать трендом!
ссылка на оригинал статьи https://habrahabr.ru/post/279461/
Добавить комментарий