PHP – это мой путь решать возникающие в Web задачи
25-26 мая в Москве прошла 5-я международная конференция «Современные технологии эффективной разработки веб-приложений с использованием PHP». И на этот раз назвать ее псевдомеждународной уже не получится!
Впервые Россию посетил основатель проекта PHP Расмус Лердорф (Rasmus Lerdorf) и один из активных разработчиков ядра и модулей PHP Андрей Змиевский (Andrei Zmievski).
Собственно, Андрей Змиевский и стал первым докладчиком на конференции, рассказав о внедрении поддержки Unicode в PHP 6. Да-да, вы не ослышались. Не так уж и давно у нас появилась стабильная «пятерка», до сих пор она еще не стала стандартом де-факто, а уже готовится версия PHP 6. Причина довольно проста: объем внутренних переработок, потребовавшихся для полномаcштабной поддержки Unicode, таков, что провести его в качестве очередного релиза версии 5 просто невозможно. Судите сами.
Заявлена поддержка принципиально нового типа – символьной строки Unicode и отделение типа «бинарная строка» (до сих пор все строки в PHP были именно бинарными или байт-ориентированными). Вводится автоматическая поддержка Unicode для строковых литералов. Происходит обновление семантики языка. Добавляется поддержка преобразований кодировок в различных потоках данных. При этом предполагается возможность оперировать преобразованиями кодировок для процесса выполнения скрипта, непосредственно самого скрипта; ввода-вывода и файловой системы.
Возможность управления кодировкой скрипта (упрощенно это можно представить как возможность использовать национальные символы вплоть до иероглифов в названиях переменных), вызвало у аудитории вполне законный вопрос: а зачем собственно? Немного замявшись, г-н Змиевский ответил, что в основном это нововведение ориентировано на разработчиков из стран Юго-Восточной Азии. Там, видите ли, любят при разработке проектов для «внутреннего употребления» использовать исключительно внутрипонятные (читай – написанные иероглифами) названия переменных и т. п. С докладом Андрея Змиевского в виде тезисов можно ознакомиться на его сайте по адресу: http://www.gravitonic.com/talks.
Старт конференции был дан, начало положено. Но дальше произошло что-то странное. Выступившие вслед за этим докладчики говорили не столько о разработке приложений с использованием PHP, сколько о чем-то другом. Прозвучавший доклад «Автоматизация проектных задач и организация цикла Build -> Package -> Deploy» был, может, и интересен в качестве примера автоматизации сопровождения процесса разработки приложений, но во-первых, докладчик не коснулся нескольких действительно важных для этого процесса тем (прежде всего – проблемы получения и сборки патчей), а во-вторых… Связь с разработкой веб-приложений с использованием PHP постепенно начала тускнеть.
Следующий доклад – «Как заработать деньги на Open Source» – прошел живее. В большей степени потому, что тема довольна близка аудитории и животрепещуща. Хотя с тем же успехом этот доклад можно было прочитать и на любой другой IT-конференции. После этого Александр Календарев попытался рассказать о методах криптозащиты в b2b веб-приложениях. Почему я написал «попытался»? Ну хотя бы потому, что 60% времени Александр говорил о стандартах и нормообразующих документах, связанных с этой тематикой. По моим наблюдениям, большая часть аудитории, явно не сталкивавшаяся с этой проблемой всерьез, просто потеряла за это время нить, суть и цель повествования.
Выступление Расмуса Лердорфа
|
В завершение первого дня прозвучали еще два доклада. Первый был посвящен дистрибуции PHP-приложений с помощью PEAR Installer. Самой интересной, на мой взгляд, в нем была часть, посвященная PEAR-каналам и возможности использования специализированного сервера. Кажется, помимо массы догматов, ограничений и всяких других штучек, призванных усложнить жизнь всем тем, кто не успел вовремя вскочить на подножку PEAR-экспресса, эта система породила, наконец, и что-то полезное применительно к реальной жизни. Завершающий первый день доклад был истинным сыном нашего времени и назывался «AJAX и основы Rich Client».
Разумеется, обойти тему технологий динамической подкачки и асинхронной загрузки, говоря о разработке веб-приложений, сейчас попросту невозможно. Другое дело, что в докладе прозвучал скорее верхний слой проблематики, так сказать «AJAX для самых маленьких». Кроме этого был дан некоторый обзор имеющихся в природе библиотек, который, уже почти под занавес, свелся к DOJO javascript toolkit. Проект уже в стадии предпродакшен, и его можно и нужно смотреть, трогать руками и т. п.
Второй день конференции начался с доклада отца-основателя PHP Расмуса Лердорфа. Прежде всего г-н Лердорф заговорил о скорости выполнения веб-приложений: «Вы, наверное, думаете Yahoo! – это огромная компания, у которой целое море серверов, которые и решают все наши проблемы с нагрузкой? Но это совсем не так!». После чего в живой и активной манере наглядно продемонстрировал аудитории подходы к выявлению, анализу и устранению неоптимальных, ресурсоемких мест. Кстати, всем рекомендуется смотреть в сторону расширения APC (http://pecl.php.net/package/APC). Следующим пунктом в докладе прозвучала проблема защищенности веб-приложений. В том числе рассмотрено расширение Filter (http://pecl.php.net/package/filter).
Третьим ключевым моментом доклада стал разговор о PHP в применении к современным тенденциям в веб-приложениях. Здесь речь пошла об усовершенствованиях по отношению к XML, RSS-потоках и, разумеется, о технологиях асинхронной динамической подкачки. В последнем случае автор-изобретатель языка остался верен JSON (Java Script Object Notation) и пропагандируемому им расширению PHP-JSON. В общем, настоятельно рекомендую всем самостоятельно ознакомиться со слайдами, подготовленными расмусом Лендорфом для этого доклада (http://talks.php.net/show/phpclub).
Во второй день также прозвучал доклад о применении процедур в СУБД MySQL, Сергей Павлов из компании РБК поведал об агрегаторах приложений. Большой интерес вызвал доклад Евгения Климова «Практика использования технологии XSLT в приложениях php5», который сложился не совсем удачно и из-за нехватки времени оказался скомканным и обрезанным.
В целом конференция оставила лично у меня двойственное ощущение. Тематические доклады наших гостей из Yahoo! (и Расмус Лердорф, и Андрей Змиевский уже несколько лет работают именно там), несомненно стали самым главным событием конференции и посвящались именно проблеме разработки веб-приложений с использованием PHP. В большинстве остальных докладов язык, технология и тенденции PHP, связь PHP с Web, PHP, как инструмент и платформа разработки веб-приложений, как бы отошли на второй план. Докладчики говорили об организации процесса разработки программных продуктов, дистрибуции, интеграции с другими программными продуктами. И в меньшей степени о PHP и PHP для разработки современных и эффективных веб-приложений. Язык трансформировался во что-то другое? Перестал удовлетворять современным тенденциям или стал проигрывать на рынке веб-приложений другим платформам?
Во второй день конференции мне удалось взять интервью у Расмуса Лердорфа и Андрея Змиевского (интервью читайте в июльском номере журнала – примеч. редакции). Я не мог удержаться и спросил г-на Лердорфа о том, что он сам думает о сравнениях PHP с другими языками, о роли и применимости PHP? В ответ Расмус очень удивился и сказал, что сам он об этом думает довольно мало. «Я смотрю на Web, я думаю именно о Web. Как только возникает новая задача, решить которую имеющимися инструментами становится невозможно или не удобно – мы что-то добавляем и меняем в PHP. Просто потому, что PHP – это мой путь решать возникающие в Web задачи».
Текст: Дмитрий Горяинов
Фото: Антон Довгаль