PHPカンファレンス2015 スペシャルレポート

PHPカンファレンス2015 当日レポート[更新終了]

この記事を読むのに必要な時間:およそ 27.5 分

岸田健一郎さん「Composerではじめるアプリケーション開発」

岸田健一郎さんは,Composerを使ったアプリケーション開発について発表しました。はじめにアンケートがあり,その結果を踏まえて,初心者向けの話とすることになりました。今回の内容について,詳しくは岸田さんのブログにも説明がありますので参照してください。

現在PHPで開発するときに外部ライブラリをインストールするには基本的にComposerで行う方法が一般的です。Composerは2012年3月1日に誕生。1.0.0はアルファ版と言いながら,ほぼ完成したものができあがっていたと言います。

では今から3年前より前はどうなっていたかというと,Pearがあったと話しました。しかし,この枠組みは誰でも登録して公開できるものではなく,厳しいレビューに晒されてから公開する形でした。これは,みんなが辛い状況だったそうです。2008年に登場したOpenpearはそのあたりが改善されて,Subcersionにより誰でも公開できる形になりました。非常に素晴らしい仕組みです。しかし,それからGitHubが大きく発展し,Composerが作られたと説明しました。

また,流行りだけではなく,決定的に世の中がComposerに移行するきっかけになった事件がありました。それは,多くの人が使っているPHPUnitが,プロジェクトをPearからComposerへ移行するという出来事です。これにより,PHPUnitはComposerの対応のインストールが非常に簡単になりました。具体的には,Pearで数十行怪しげなコードを入れてPHPUnitをインストールしていましたが,⁠composer install」とたった1行入れるだけになりました。

『PHP: The Right Way』という本には(今PHP開発をする上で幸せになるための本で,お勧めとのこと)psr-4のautoloadingについての説明があり,そこではrequireやrequire_onceをたくさん書くべきではなく__autoloadを書こう!と記載されています。なお,この__autoloadは,実はなにも考えずともComposerが勝手に行います。

Composerのインストール方法は,ドキュメントに記載されているとおり,次の形でインストールできると示しました。

curl -sS https://getcomposer.org/installer | php

画像

composer.jsonにオートロードするphp等を記載することで,requireやrequire_onceを記載する必要はなくなります。ちなみに,Composerについて何か知りたいという場合は「composer help」ではなく,⁠composer list」で表示されることに注意しました。

開発時のチップスとしては,⁠バージョンを固定する,*などを使わない」⁠update時にパッケージ名を指定する」などを紹介しました。

画像

もしもコンフリクトした場合にはツールでのコンフリクト解除はできないため,composer.lockを削除し,composer installを再実行,git add / git commitしたほうが良いとのことです。良い方法のようです。

ここまでで時間が来てしまいましたが,Composerについての理解の深まる,素晴らしい発表でした。

柏岡秀男さん「PHP初心者セッション」

有限会社アリウープの柏岡秀男さんによる発表です。2000年の頃から,ほぼ毎年参加して発表しているそうです。終始,場を和ませる冗談が入り混じり楽しい発表でした!

画像

OS,Web Server,Database,Scriptの組み合わせでは,以下のものが多く使われていると指摘しました。

  • LAMP:Linux, Apache, MySQL, PHP
  • LAPP:Linux, Apache, PostgreSQL, PHP
  • LEMP:Linux, Nginx, MySQL, PHP

では,どんな環境で始めたらよいか。ホスティング,レンタルサーバ,AWS,Microsoft Azure,Google App Engine,VMware,VirtualBoxなどを挙げました。手軽にはじめるのであれば「XAMPP」⁠MAMP」といったものもあります。発表では実際にMAMPを利用して,Apacheの立ち上げ方やphpMyAdminの紹介が行われました。

PHPとHTMLを組み合わせて,どのように出力するかについて説明が行われました。PHPでHTMLを出力することもできるため,PHPを扱っているのかHTMLを扱っているのか意識する必要があります。数回のデモと解説のイテレーションを繰り返しながら,話を進めていたので初心者でも分かりやすかったのではないでしょうか。⁠文法」⁠サーバサイドスクリプト」⁠PHP関数」⁠php.netのマニュアルの見方」⁠htmlspecialchars」などを解説していました。

PHP初心者がこれから学ぶ際に注意すべきまとめとして「PHPのマニュアルを活用すること」⁠入力値や出力値に注意すること」⁠入門書はよく選びましょう」⁠怖がっていてはいけません」ということを挙げていました。とくに「とにかく書いてみる!」ということが大事ということで,発表が終了しました。

PHP初心者にとってはステップアップに繋がる素晴らしい発表だったと思います。

画像

畠山大有さん@クラウドから地上まで。Azureがどうやって動いているのか,掘ってみよう」⁠

もともとの発表予定者だった畠山さんに替わり,Microsoftのテクニカルエバンジェリストの高添さんがAzureについて発表しました。

画像

はじめに

AzureはMicrosoftが運用しているクラウドサービスで,PaaSやIaaS,BaaSなど様々な形態のサービスを持っていることを紹介しました。9月30日に7個,10月2日に11個というハイペースで新機能をリリースしていて勢いがあるそうです。

PHPやりたいけどPHP以外でハマることって実は多い

今回の話は,PHPをとりあえず使うならAzureのPaaSを使うのが便利!という内容でした。PHPを使う場合はApacheやNginxなど,いろいろな設定をする必要があります。こういった設定はどこまでユーザーは必要と感じているかというと,本当に業務で使う人以外は必要としない場合も多いと指摘。Microsoft WebMatrixというAzureのPaaSならそういった面倒な設定をする必要もなくPHPを起動することができると話しました。実際にインスタンスを立ち上げ,phpinfoが表示されるまでのデモを行っていましたが,かなりスピード感がありました。

AzureのPHPなら…?

WebMatrixでは**PHPのバージョンの動的変更が可能**で,PHP5.4から5.6に動的に環境を変更する仕組みについて紹介しました。また,スケールアウトの仕組みも設計されています。負荷がかかると自動的にスケールしてくれる仕組みで使用者はアプリケーション開発に専念できます。スケールに際して気になるリージョンは全世界にあり,日本でも東西にひとつずつデータセンターがあります。1リージョン当たり60万台の物理サーバーを置いていて,日本国内で1年間に購入される物理サーバーの数50万強をゆうに超えるとのことです。

タイトルにあったクラウドから地上までとは?

そして,タイトルの「クラウドから地上まで」という意味について取り上げました。クラウドはそのままの意味ですが,地上というのはオンプレミス環境のことを指すとのこと。パグリックなクラウドだけではなくオンプレミスとしてもAzureを利用することが可能になっていて,パグリックなクラウド側と同じインターフェイスでプライベートPaaSとして利用可能になっていると話しました。この仕組みを実現する構成としては,リクエストをハンドリングするフロントサーバーが存在し,バックエンドに実際に処理を行うサーバーが待機しているという状態になるようです。フロントのハンドリングでオンプレミス環境に切り替えるといったことも容易にできると述べていました。

画像

まとめ

発表では,Azureの手軽さや機能性を主に説明していましたが,⁠何かを学ぶためには,自分で体験する以上にいい方法はない」という言葉で締め,実際に使ってみると早い述べる高添さん。みなさんも実際に使ってみてはいかがでしょうか。

著者プロフィール

大橋勇希(おおはしゆうき)

東京都渋谷区在住。Webアプリケーションエンジニアで,主な使用言語はPHP。最近は,TDD(テスト駆動開発)やDDD(ドメイン駆動設計)に取り組みエッセンスを吸収している。

Twitter:@secret_hamuhamu URLhttp://hamuhamu.hatenablog.jp/


柏原幸治(かしわばらこうじ)

東京都豊島区在住。仕事はブラウザーゲームのバックエンドをPHPで開発している。他の言語もいろいろいじるが,一番長く使ってるPHPが一番使いやすい。

Twitter:@noah0x00
Facebook:https://www.facebook.com/koji.kashiwabara


菅原のびすけ(すがわらのびすけ)

株式会社LIG エンジニア。1989年生まれ。岩手県立大学在籍時にITベンチャー企業の役員を務める。同大学院を卒業後,株式会社LIGにWebエンジニアとして入社し,Web制作に携わる。最近は特にIoT領域,インタラクティブな企画実装などに従事している。

マッシュアップアワードを始めとしたハッカソン等で入賞歴あり。家賃0円クリエイターズシェアハウス第1期生。ジーズアカデミー第1期メンター。LIGinc,HTML5Experts.jp,さくらのナレッジ,gihyo.jpなどでも執筆・寄稿をしている。Milkcocoaエバンジェリスト,特技はわんこそば,趣味は雪合戦。

Twitter:@n0bisuke

LIGincプロフィール:http://liginc.co.jp/member/member_detail?user=nobisuke


中村慎吾(なかむらしんご)

仕事でPHPを使うようになって10数年。楽しい事には何でもやってみるスタイル。趣味が講じて(拗らせて?)会社も作りました。Web開発となるとPHPは手放せません。

Twitter:@n416
URLhttp://kisaragi-system.co.jp


仁多見遼(にたみりょう)

岩手県立大学大学院 ソフトウェア情報学研究科 2年。主にAndroidアプリ開発をしているが,2016年4月から東京でWebエンジニアとして働くことになり,PHPやJavaScriptを書き始めた。いろんなイベントに参加したり,自身でハッカソンを主催するなどイベントが大好きな人。

Twitter:@bird_nitryn
URLhttp://rnita.me

バックナンバー

PHPカンファレンス2015 スペシャルレポート