PHP Frameworks Days 2014 — впечатления

Fwdays это групповые танцы с бубном над загадочной виндой ©

7-й Frameworks Day в целом и 3-й для меня (предыдущие два — ZF D, JS D). На этот раз мероприятие проходило в Космополите (Большевик). Хорошее просторное помещение со всей необходимой инфраструктурой.

Регистрация заняла довольно много времени, так как шла только в два потока (А-К, Л-Я). Возможно, из-за этого начало затянулось на 20 минут. В помещении был большой гардероб, но с одной гардеробщицей. Потому куртку я не сдавал, чтоб в обеденный перерыв не участвовать в DDoS-атаке, а поскорее пойти обедать. При регистрации выдали уже «стандартный» набор — котомка, блокнот, ручка и рекламка от спонсоров. В самом конференц-зале было очень просторно. Стульев стояло человек на 400 (приблизительно), но влезло бы еще столько же. Да и места между рядами было достаточно, чтоб не чувствовать себя как в маршрутке «на колесе». Это очень большой плюс, так как в комфортных условиях информация усваивается куда лучше. Этому так же способствовали два проектора, которые показывали презентации.

Вступительное слово от организаторов было очень коротким и содержало в себе больше приветов спонсорам (оно и понятно). Первый доклад был про книгу о Symfony Best Practices и отношение докладчика к некоторым пунктам из нее. Порадовало, что в презентации кода было немного. Для разогрева аудитории и подготовки ее к насыщенному новой информацией дню, получилось самое то. Каждому докладчику ближе к концу отведенного времени показывали, сколько еще осталось (15/10/5 и т.д. минут). Получилось, что задержек практически не было.

Далее был доклад о тестировании и вещах, связанных с ним. Слушатель узнал, что тестирование — это не только unit. Что мир клином на unit-тестах не сошелся. Что есть еще приемочные, функциональные, интеграционные и другие. Какие тесты без тестовых данных (фикстур)? Оказалось, что делать фикстуры «ручками» уже не модно. Опытные используют Factories (например, FactoryMuffin) — генераторы этих самых мок-данных. Да, тестовые-данные надо как-то чистить между тестами. Можно вручную, можно просто заново создавать весь комплект фикстур, а если Ваш тест идет как транзакция, то по его завершению делайте rollback. Данная тема не могла обойтись без упоминания TDD. Ну а упоминание этой аббревиатуры не могло обойтись без холивара. Собственно, и не обошлось. Благо, он был не долгим. Далее автор рассказал про такую штуку как Continuous Integration и что надо, чтоб развернуть его локально: Travis, Docker, Vagrant.

После каждого четного доклада был перерыв (либо кофе-пауза, либо обед).

Третьим был доклад про Yii2, а точнее про отличия второй версии от первой:

  • PHP >= 5.4
  • Анонимные функции в конфиге
  • render теперь надо выбывать либо с echo, либо с return
  • Поменяли алиасы путей (теперь используется префикс @)
  • В ActiveRecord relations теперь не один метод возвращающий массив, а отдельные методы под каждую связь

Добавили:

  • DI Container, Service Locator
  • Набор официальных расширений
  • REST API фреймворк
  • Yii2 Debug (есть его порт на Yii1 на GitHub’e)
  • В конфиге DB из коробки уже есть Master-Slave

А также многое-многое другое. Каждый из вышеуказанных пунктов был проиллюстрирован фрагментами кода («было» — «стало»).

Англоязычные доклады в живую до этого мне слушать не приходилось. А сегодня пришлось — «Evolution of PHP Dev» (Nate Abele). Вначале автор спросил у аудитории, кто использовал CakePHP. И извинился перед ними. Возможно, лет через 7-10 он так же спросит про Lithium 🙂 Очень порадовало, что говорил Нейт не как типичный американец (как будто жвачку жует), а довольно внятно и четко. Не могу похвастаться высоким уровнем английского языка, но непонятных моментов в докладе было для меня очень мало. Очень порадовало, что Нейт сформулировал мысль, которая у меня крутилась на подсознании: «Ember, Backbone, Angular и т.д. забирают View из MVC в PHP».

Незаметно настало время обеда. Удалось избежать траты времени в гардеробе («все свое ношу с собой») и не спеша покушать в ближайшей пиццерии. Интересно, что где-то недалеко от нас проходила еще какая-то конференция и обеденные перерывы у нас совпали. Такого наплыва людей в середине дня в кафешке явно не ожидали. В какой-то момент даже не было свободных мест.

Первым послеобеденным докладом был «Laravel 4: простота во всем». Узнал, что в Laravel тоже есть DI/IoC, events, кеширование, роутинг, ORM и т.д.

Далее был доклад об разработке Yandex PHP Library. Эта библиотека является SDK для Yandex API. Доклад был мне интересен, так как я занимаюсь SDK (никогда так не называл, но сейчас можно) для Dota2 API (GitHub). В общем, есть к чему расти.

Далее по программе шла запись видео-интервью с Zeev Suraski. Ему задали всего несколько вопросов:

  • Отношение к фреймворкам? Положительное.
  • Лучший фреймворк по его мнению? Лучшего нет. Пользователь скорее возьмет один компонент с одного, другой с другого…
  • Отношение к HHVM? Дословно — «competition is good». Здоровая конкуренция — это хорошо.

Очень надеюсь, что я понял все, что сказал Зеев, правильно и не переврал его ответы 🙂

Предпоследний доклад был про Phalcon и Yona CMS. Ни данный фреймворк, ни CMS мне абсолютно не знакомы, так что количество новой информации было over 99%. Как и текста на слайдах автора. Да и читать со слайдов — не лучший способ донести доклад к аудитории.

Последним шел доклад от Андрея Аксенова. Кто, как не автор, может лучше рассказать про Sphinx? А если автор еще разбавляет свой доклад шутками «ниже пояса» и держит активный контакт с аудиторией? Тогда получится отличный завершающий штрих для такого насыщенного дня. Пересказывать содержимое нет смысла — это надо видеть. Организаторы уже выложили видео на странице конференции. Последнее выступление начинается где-то с 02:38:00. Андрей превысил временные рамки доклада на полчаса минимум, но 90% все равно с интересом слушали его. Чувствуется богатый опыт выступлений перед аудиторией.

P.S. Очередной раз организаторы показали, что могут сделать качественное мероприятие, о котором хочется рассказать коллегам и потратить время, чтоб записать свои эмоции и впечатления от него. Жду следующих ивентов.

, ,

Оставить комментарий

Top ↑ | Main page | Back