第80回PHP勉強会、LT7本立て箇条書きまとめ!
第80回PHP勉強会のレポートです!
LTが7本で盛りだくさんの上、濃いお話ばかりでした!!
Laravel開発カフェ〜Railsアプリ『かんばんりすと』の移植 @jumilla さん
ちなみにLaravelについて、会場では
- 名前を知っている人はほとんど
- 使ったことがある人は3割ぐらい
- 仕事で使っているのは1割ぐらい
という感じの挙手率でした!
Larabelとは?
Laravel開発カフェとは?
そこで着手したのが「かんばんりすと」というRailsアプリのLaravel移植版。
8人で開発に着手しました。
始めてから発覚した問題点
- 開発OSがみんな違う
- 開発ツール(エディタ)がみんな違う
- Webアプリの解析方法がなかった
- みんなで触って一斉にURLを書き出したり
- みんなRubyもRailsも知らない
- ソースコードリーディングがつらい
よかったこと
- Rails3とLaravel4は結構似ていた
- ルーティングなど
- フォルダ構成
- ORマッパー
- パッケージ管理
- Rails固有の機能もカバーできた
- Asset Pipeline
- device
- ツールを開発できた
- ペアプロ形式が好評
飲み会が盛り上がった(5時間)
結局1日じゃ終わらなかったけど、最終的には動くところまでいった
- ソースコード公開中
PHPのセッション管理にDynamoDBを使う @inufs さん
セッション管理方法どうしてますか?
- クライアントサイド
- Cookie
- 改ざんの危険性、容量の問題
- Cookie
- サーバーサイド
DynamoDBとは?
DynamoDBを使うメリット
- サーバー管理をAWSにおまかせできる
- 保証された読み書き性能
- Session Handlerも用意されている
DynamoDBを使うデメリット
- スパイクアクセス(急なアクセス上昇)に弱い
- それはどの手法でも難しいのでは?(会場より)
- 対処法としてはDynamic DynamoDBというツールを使うなど
使い方
料金体系
- 自分で指定した書き込み・読み込み性能に応じて課金額が変わる
- 参考) Read 100, Write 100で$66.25 / month
スクレイピングその後 @tomzoh さん
前回、スクレイピングの手順を紹介するLTをしました。
前回のオチ:自分がスクレイピングに使ったライブラリを最後に紹介しようとしたら404になっていた!!
その代わりにいろんな方がスクレイピング用のライブラリを教えてくれたので、考察など
- phpQuery
- QueryPath
- こちらもjQueryのようにセレクトできる
- インストールはComposerで一行
- HTML構文がちゃんとしてないとパースエラーが出る(厳しい)→なので諦めた
- Goutte
- WebDriver
- 画面表示のないブラウザで要素を選択するようなもの?という印象
- ちゃちゃっとやるには不向きと感じた
まとめ
いろいろあるけど個人的にはGoutteがイチオシ
「laravel.jp」と「Laravel Meetup Tokyo Vol.5」の告知 @mukaken さん
PHPカンファレンス2014
laravel.jp
- http://laravel.jp/
- 公式サイト http://laravel.com の日本語訳
- 今月オープンしました
- フッターにlaravel界隈からの言葉が流れるのが見どころ
Laravel Meetup Tokyo Vol.5
- 2014-07-29(火)19:30 - 22:30
- http://laravel.doorkeeper.jp/events/13148
- キャンセル待ち多数
PHPとHHVMの速度比較 @y__uti さん
- HHVMが速くて楽しい
- 「Mandelbrot集合」の描画速度で比較をしてみる
- 比較対象
- PHP5.4.16
- HHVM3.2.0-dev
- PHPNG
- 〜実演がありました〜
- 結果
- ほか、実用的なところでは
- Composerで最初にとってくる処理がHHVMだと5倍ぐらい速い(らしい)
PHP における機械学習 @pjxiao さん
スライド
PHP による機械学習 - Google スライド
- FANNとは
- PHPからニューラルネットワークを使えるようにしたモジュール
pecl install fann
えっと、内容が高度で専門的な内容だったためリアルタイムに聞いて理解するのがせいいっぱいで全然メモできませんでした・・・(;_;)(処理能力の限界)
でも私でも概要はわかりましたしすごく興味深く面白かったです!!
スライド、図もあってすごくわかりやすいのでぜひ見てみてください!!
「本当のオブジェクト指向は可読性を上げる」@wa_terada さん
- オブジェクト指向は可読性が下がるから禁止しようという記事を見て悲しくなった
- オブジェクト指向は可読性を上げるために作られたと言っても過言ではない!
- でもそれがあまり伝わっていない!
- オブジェクト指向とは、抽象化だ!!
- 抽象化によって可読性を上げることができる
- 抽象化とは
- 処理と変数をまとめたオブジェクトに的確な命名を行うこと
- 的確な名前がついていれば、毎回中身を見なくてもイイ!
- 毎回実装を読まないといけないのであればその抽象化は失敗している
- それなら関数切り出しでもいいのでは?
- そうです
- 関数切り出しも抽象化の方法です。
- 関数切り出しとの違い
- オブジェクトだと、変数とそれに関連する処理をまとめて抽象化できる。
- じゃあ何度もクラスの中を見るMVCはオブジェクト指向じゃないの?
- 可読性向上以外の用途に使われることで、オブジェクト指向=可読性悪い、みたいな認識がついてしまう
- デザインパターンとか
- クラス2つで済むのに20個ぐらいになったりする
- オブジェクトの層を作るのに適切な範囲を超えて「やりすぎ」てしまう人がいる(会場より)
- プライベートで好きなだけオブジェクトを書いてオブジェクト欲求を解消するのが吉
- 「オブジェクトに抽象化することで可読性が上がる」と思ったときに抽象化するのが真のオブジェクト指向だ!!
(感想)
設計思想みたいなお話は個人的にとても好きです。
そのぶん強いこだわりを持つ方同士でぶつかりやすい部分だと思うので、実際に会場で聞かずにまとめだけだと意図が誤って伝わらないかちょっと怖い気持ちがありますが・・・
ぜひスライドをご覧ください!!
おわり
LT盛りだくさんな上、どれも濃い内容で満腹感がすごかったです!!
発表者のみなさまおつかれさまでした&ありがとうございました。
終わったあとは恒例のワンナイト人狼で盛り上がりましたよーん。
回を重ねるごとに参加者の腕が上がっていく・・・(おもしろこわい)
さいごに、PHP勉強会のグループページはこちらです!
PHP勉強会@東京 | Facebook
PHP勉強会@東京 | Doorkeeper