ZendCon 2015 参加レポート

2015年10月19日から22日にかけて、ZendCon 2015 がアメリカ合衆国ネバダ州ラスベガス市で開催されました。
弊社親会社の株式会社イグアスから 1 名が20日から22日にかけて参加し、合計18件のセッションを聴講してまいりました。
それらのセッションの中から、興味深いセッションを6件ピックアップしてご紹介いたします。
一覧表の最初の行(うす水色の背景の行)をクリックすると、ソートできます。
<セッション紹介>
日時 分類 聴講メモより、セッションタイトルおよび内容など
22日 09:15 ZF タイトル:Components, PSR-7, and Middleware: Zend Framework 3
要約:Zend Framework Ver 1 および Ver 2 までの歴史と反省点を踏まえ、今後の Ver 3 のゴールを提示した。
発表者:Matthew Weier O'Phinney 氏

Zend Framework 3 のプランについて語る Matthew 氏 振り返りと反省点
  • Ver 1 では Form, Layer, Application, Dojo, jQuery などに対応した。
  • Ver 2 では Event driven アーキテクチャー, Dependency Injection (依存性の注入) に対応した。
  • しかし、Zend Framework を取り扱うためにはスキルも要求される。

Ver 3 が目指す3つのゴールについて
  1. コンポーネント化と再利用
    • Composer 利用により必要なコンポーネントのみ取得
    • すべてのコンポーネントは別々に Version 付けする
    • パッケージごとのドキュメント
    • ソース、テストの構造化
  2. パフォーマンス
    • イベントマネージャーの高速化(ユースケースにより4~15倍)
  3. Usability
    • ドキュメントを使いやすく
    • 基本に立ち返り、MVC にとって必要なもののみになるように関係を減らす。MVC のエッセンシャルン部分は残す。例えば Zend_Navigation は要らない
  4. その他、php-fig.org に掲載の PSR-7 などの標準化をおこなう。これは実装ではなくインターフェースの標準化

スライド     Youtube     Roadmap (2015/11/25 発表)
22日 10:30 ZF タイトル:Building a Micro-Framework with Zend Framework 3
要約:PSR-7 準拠のマイクロフレームワーク Zend Expressive の紹介
発表者:Marco Pivetta 氏

Zend Expressive とは?
下記の2点を狙った小規模フレームワーク
  1. Web のリクエストを受け取ってレスポンスを返す処理に特化する
  2. 各種フレームワーク間の HTTP メッセージ処理などを標準化する

メリット
  • リクエストに対するレスポンスの関係が分かりやすくなる
  • Zend Framework の「魔法のような」コントローラーよりもわかりやすくなる
  • 共通の バリデーション設定値を、各メソッドの中から共通部分にくくりだしできる

他の選択肢
Zend Expressive を使う代わりに、Slim 3、 Symfomy 3 またはその他の PSR-7 準拠のミドルウェアを使用する選択肢ももちろんある、とのこと

スライド     ダウンロード     マニュアル     関連プレスリリース (2015/10/20)
21日 16:00 ZF タイトル:Performance Tips & Tricks for Zend Framework 2 Applications
要約:Zend Framework Ver 2 は、柔軟だが重くなりやすい。重さを解決する手段を紹介
発表者:Slavey Karadzhov 氏

処理実行プロセスの図解、簡単な手段から順々に高度な手段まで具体的な方法が説明され、大変理解しやすかった。
たとえば下記のような手段が紹介された。
  • データベースの処理をスキップするための、データベース取得結果のキャッシュ
  • Web ページ生成処理をスキップするための、ページ・キャッシュ
  • Action Cache
  • Route Cache

なお、次の Ver 3 では、イベントマネージャーおよびサービスマネージャーのパフォーマンス改善がアナウンスされた。

スライド:非公開     発表者の運営する Web サイト、Learn ZF2 | Learning By Example
21日 09:45 API Apigility のデモ タイトル:Apigility: Agile APIs
要約:Apigility の設計思想と実現方法
発表者:Matthew Weier O'Phinney 氏

前半は、Apigility の設計思想の話。 REST によるデータのやり取りから始まって、JSON 形式の利用、OAuth による認証の利用など API 利用の歴史を解説しながらの話だったため、 Apigility を開発した理由がよく理解できた。
後半は、Apigility で提供している API の紹介およびデモ。

スライド     ダウンロード     Apigility 入門(電子書籍)
売上は、執筆者個人ではなく弊社の口座で管理し、当 Web サイトの維持管理費用に活用させていただきます。

IBM i ユーザー向け解説
(21日 16:00 の 「Apigility-Powered APIs on IBM i」のスライド)
20日 10:00 製品紹介 タイトル: The Zend DevTools Ecosystem
要約:各 Zend 製品の機能紹介とデモ。プレビュー
発表者:Kaloyan Raev 氏、および Michel Gerin 氏

(英語版の) Zend Studio 13 および Zend Server 8.5 で追加された新機能のデモなどが実施された
今後の予定として Z-Ray Stand Alone がアナウンスされた。
Z-Ray Stand Alone は、自分の好きな PHP 環境に、Z-Ray をインストールできるようにしたもので、Zend Server をインストールしなくても Z-Ray が使用できるようになる、とのこと
スライド:非公開     Youtube (音声のみ)     Z-Ray Stand Alone のダウンロード     Z-Ray利用方法解説(電子書籍)
売上は、執筆者個人ではなく弊社の口座で管理し、当 Web サイトの維持管理費用に活用させていただきます。

関連プレスリリース (2015/10/20)
20日 11:15 連携 タイトル:Pretty Continuous Delivery - Bamboo and Zend Server
要約:Zend Server へのデプロイ作業をタスクとして登録できる Bamboo 用プラグインの紹介およびデモ
発表者:Jan Burkl 氏

PHP の開発工程の管理の一つのタスクとして、Zend Server へのデプロイ作業を Atlassian Bamboo にタスクとして登録し、 Bamboo の画面を表示しながら、PHPUnit 実行やデプロイなどのタスクを変更して実行するデモ。
Bamboo の機能の理解にも役立った。

スライド:非公開     ダウンロード     zend.com による継続的インテグレーションの紹介     株式会社イグアスによる Atlassian 製品ご紹介