Download - Laravel開発カフェ〜Rails3アプリ「かんばんりすと」の移植
Laravel開発カフェ~Rails3アプリ「かんばんりすと」の
移植古川文生 @jumilla !
2014.7.28
自己紹介
• プログラムを作ったOS
• MS-DOS、Windows、Linux、Mac、Android、iOS
!• プログラミング言語
• C、C++、Objective-C、Java(SE, Android)、VB、C#、Perl、PHP5、Python3 !
• フレームワーク • .NET、Android、CakePHP2、FuelPHP、Laravel4、Flask、Pyramid、Cocoa
古川文生(ふるかわふみお)@@jjuummiillllaa ((フミリア))
活動株式会社ストレートスピリッツ
ソーシャルシステムコーディネーター
あったかマネー研究会
お金についてもっと知ろう
プログラミングコーチ
iOSプログラミング(プライベートコーチ)そして・・・
PHPフレームワーク「Laravel」とは?
2011年に生まれたモダンなWebフレーム
ワーク
PHP5の機能を積極的に使っている
さまざまなWebフレームワークの機能の
いいとこ取り
ファサードが便利、APIのアクセスに迷
わない
ファサード? ふぁさーど?
ファサードとはLaravel4 APIの入り口です。
PHPクラスです。グローバル名前空間にエイリアスされています。
コントローラー内でもビュー内でも同じコードでアクセスできます。
$input = Input::all();!Redirect::to($url);
どこでもこう書ける
Laravelロビー活動
2014年5月「OSC2014 沖縄」に登壇
2014年6月~7月「Laravel開発カフェ」3回開催
2014年7月4日「Laravel Meetup Tokyo Vol.4」主催
古川の活動を振り返る
福岡・北海道・大阪でもララベルの声が!!
Laravel開発カフェ
Laravel開発カフェって?!
1日フルタイム
ペアプログラミング
オープンソースで公開
コンセプトはね
かんばんりすと
Rails3/bootstrap2ベース
1ユーザー1かんばんのシンプルな作り
DnD操作主体の直感的なUI(ほぼJavaScript)
データベースは3テーブルしかない
分析したよ
みんなでやれば 1日で終わるだろう
とりあえずやってみよう♪
問題点が次々と噴出!
1. 開発OSがみんな違う
Mac
Mac+Apache
Windows+Linux(リモート接続)
Windows+Linux(Vagrant+VirtualBox)
Ubuntu
2. 開発ツールがみんな違う
Sublime Text+Source Tree
Php Storm
EmEditor+Git(コマンドライン)
3. Webアプリの解析手法がなかった
アプリを触ってURLを見つける(←アドホック!)
MySQLの中身を共有するのに全フィールドをホ
ワイトボードに書き出す(←ローテク!)
4. みんなRubyもRailsも知らないソースコード解析がつらい!
! 記号の意味がわからない(@とか@@とか)!
! 演算子が読めない(<=>ってなんだ!?)!
Viewの移植(erb→blade)がつらい!
! → erb2bladeコマンドの開発!
ORマッパーの書き換えがつらい
中にはよかった面も
1. Rails3とLaravel4は結構似ていた
Routing+MVC
フォルダ構成
app/config/controllers/models/views
パッケージ管理
composer
ORマッパー
メソッドチェーン
モデルとコレクション
リレーション
クエリースコープ
!
2. Rails固有の機能もカバーできた
PHPポーティングあり
codesleeve/asset-pipelineパッケージ
まだ不具合あり(アプリ側で回避)
AAsssseettPPiippeelliinnee
!
2. Rails固有の機能もカバーできた
認証
zazico/confideパッケージ(4.0 BETA)
デバイスによるビューの差し替え
jenssegers/agentパッケージ
Viewファサードのフック
ddeevviissee
!
3. ツールが開発できた
Railsのテキストテンプレート erb を Laravel4のHTML
テンプレート bladeに変換するツール
正規表現で置換しただけ
artisanコマンドとして実装
https://github.com/jumilla/laravel-erb2blade
eerrbb22bbllaaddee
ひととおり動いた(^^)/
hhttttpp::////kkaannbbaannlliisstt--ddeevv..ssttrraaiigghhtt--ssppiirriittss..ccoommでデモ運用中!
参加者の声
相談できる人がいるのはうれしかった
VVaaggrraanntt教えてもらえた
熱かった/暑かった
仕事モードになってしまった
またやりますよね?
※一部抜粋
ソースコード公開中GitHub
http://github.com/jumilla/kanbanlist
Travis/Coveralls設定済み
Laravel4アプリのリファレンス実装として活用してください
デモ
http://kanbanlist-dev.straight-spirits.com
developブランチから自動デプロイ
まとめ!
対象アプリの分析情報、分析手法が足りなかった
!
参加意識・仲間意識が高まる
一人で悩むより相談した方が解決がはやい
かなり神経使う
!
5時間語り明かす
xx 情報不足
◎ ペアプロOOKK!
◎ 飲み会大盛り上がり
イベントメトリクス
開催回数 3回
総時間 24時間
総参加人数 のべ15人
総ペア数 5組
!
!おつかれさまでした!
そして・・・
これからのLaravel活動Laravel Tokyo ユーザーグループ オフラインイベント/書籍執筆などの活動
他フレームワークのユーザーグループとの交流もしていきたい
http://laravel.tokyo
Laravel東京スクール (シーズン1) 開催 平日夜 月イチ×6回(第1回は8/7木)
五反田 VACANCY OFFICE
http://laravelers.doorkeeper.jp/events/13216
2014年はLaravelが Cool(来る)