えっ、私のLaravelのバージョン低すぎ・・・

フレームワークとかあんまり追ってませんが、会社の近くでイベントあったので聴いてきた。 ココ最近2つぐらいLaravel触ってつくったので、なんか便利な使い方とかあるかなぐらいのノリでいってきたつもりが実はLaravel5.0の話だった。

結論からいうと5.0にはあまり興味がわかなかった。 大事なことなので最初に言いました。あとはメモ書き。

laravel5.0について

最近の状況

  • 2014/6 Laravel4.2リリース
  • 2014/9 Laravel4.3を5.0に変更
  • 2014/11 Laravel5.0-DEV drastic(何のことを指してるかわからないけど、はじめてきいたw)

変わる(らしい)ところサマリ

  • New Folder Structure
  • App Namespace
  • Spiffy Authentication
  • Constracts & Method Injection
  • Form Requests
  • Multiple Filesysmtem
  • Socialite(BETA)
  • Elixer
  • New ENvirionament Detection
  • Route Annotatino
  • Event Annotation
  • Route Caching
  • New File Generator

それぞれ概要

間違ってるとこ結構あるかも。終わった後に講師の人と話してみたら、ぼくもそこまで・・・みたいな感じだったw

  • New Folder Structure

結構ディレクトリかわる

app/comannds => app/Console/
app/controller => app/Http/controller

とか他もかわるらしい。developブランチみたらディレクトリ全然違うw

  • App Namespace

名前空間強制されるので、app/config/config.phpに書いてるFacadeはだめぽい。 いちいちuse使うか、\をつけてグローバルから呼び出す 名前空間あんまり使ったこと無い僕的には、結構わかりやすかったんだけどなー。

  • Spiffy Authentication

AuthController.php PasswordControllerがデフォルト追加 自分でcomposerで読み込んだりしなくても、よろしくやってくれる。 viewはないから自分でつくってね

  • Contracts & Method Injectino

ある規約にのっとると、construct関数とかmethodによろしくオブジェクトやクロージャを入れてくれる ナニコレよくわからないw

  • Form Requests

formアプリで、今まではRequestクラスからパラメータを取得して、自分でrulesとかをsetしたValidatorでよろしくハンドリングしてたものをHogeFormRequestクラス(Validationと、エラー時のviewのハンドリング)みたいなものを作成し、よろしく動くようになる

  • Multiple Filesystem

ファイルの保存先にWebストレージを選択できるようになる S3とかRackspaceとか

  • Socialite

Facebook, Github, Google, Twitterとかのoauth簡単に使えるらしい。 今は標準パッケージで入ってないから、composerでいれてね

  • Elixer

Webアセット管理機能(gulpベース) node/npm/gulp入れてくださいということらしい。 Homesteadには既に入っているみたいw これ果たして使うのかな・・・w アセットのコンパイル(Less, Saas, CoffeeScript)、アセットのminifyとかもやってくれるらしい

  • New Environment Detection

環境変数で判定していたものが、.env(.gitignore)ファイルに書く。 これやるメリットってあるんだろうか。

  • Annotation

RouteとEventというものに使えるらしい。ドクトリンのannotationというものを参考につくってるらしい(?)

/**
 * @Get("/index")
 */
 public function index() {}

みたな。

artisanコマンドでrouting一覧を出せるということだったのだけど、果たして一体これ誰得感ある。 routes.phpに書いたほうが、Http Proxyのところわかりやすいかなと思ったのだけれども

AnnotationをつけるとEventListnerの登録ができるらしい。 ここらへんもあんまりきいてなかったw

  • Route Cache

ルーティングがキャッシュできる。 ただそんな早くならないとか。え・・・どういうことw

  • NewFile Generator

なんかあるらしい(きいてないw

3社の方々がとあるサービスでlaravelを採用した理由みたいなものを発表していました。

所感

  • 4系からの移行はたぶん無理
  • 5.0に上げるメリットわからない。
    • 聴き方が悪かったのかもしれないけど、発表者の人に何か使いたい機能あります?っていったらうーんっていってたw
  • お前かわっちまったな・・・
    • マイクロフレームワークで、自分でコンポーネント組み合わせてはちょっと・・・という人向けに、ちょうどいい感じのフレームワークかと思ったけど、5はあんまりよくわからなかった。これ継承してこう書いたら、こう動くから!みたいな雰囲気を感じた。自分の好きなバンドが売れたら変わっちまったなというものと同じでないことを祈るw

フレームワークとかあんまそこまで熱心に動向を追ったりはしないのでなんとも言えないのですが、Railsみたいな感じをPHPで目指そうとしているのか、それともフレームワーク作者の遊びなのかはわかりませんでした。 なんともまとまりのないメモ書きだなあ