SlideShare uma empresa Scribd logo
1 de 36
Baixar para ler offline
Laravel5.1 release
Laravel Meetup Tokyo Vol.6
yuuki takezawa
Profile
• ytake (github), ex_takezawa(twitter)
• java, php, node.js, RDBMS, NoSQL, VoltDB
4章担当
一家に一冊よろしくお願いします
Laravel5.1

release!
long term support


Laravel 5.1 will receive bug
fixes for 2 years and
security fixes for 3 years.
ドキュメントが豊富に
"php": ">=5.5.9"
• PHP5.5.9以上となりました

現行のHHVMももちろん、

問題なく動作します

PHP7でも(いまのところ)
required
• OpenSSL PHP Extension
• Mbstring PHP Extension
• Tokenizer PHP Extension
goodbye mcrypt!
• opensslエクステンションが必要です
• MCRYPT_RIJNDAEL_128

MCRYPT_RIJNDAEL_256を選択した場合のみ

mcryptが利用されますが、

5.2で削除されます
upgrade guide
compile fileの行方
• storage/framework配下にあった

最適化ファイルcompiled.php
• bootstrap/cache配下に移動

services.json

configキャッシュ,routeキャッシュも

文字通りbootstrapへ
AuthController?
• デフォルトで用意されていた認証関連の

コントローラを使っている方は少しだけ変更
があります
• 使ってない方は何もなし
デフォルトで付属している

コントローラなどは、
モックや簡単なプロトタイプ
がすぐに作れるように置いて
あるだけで、
推奨ではありません
Validation
• formatValidationErrors , formatErrors

あたりのメソッドをオーバライドして使って
いた方はValidatorインターフェースなどを

コンストラクタにタイプヒンティング
Eloquent
• createをオーバーライドしていた方、

内部でfindをコールしてた方は少しだけ変更
• dateFormat周りもすこーしだけ変更
• 大きな変更は無し
CommandBus -> Job
• CommandBusはQueue処理向けのJobクラス
に変更
• HandlersはListenersへ
• SelfHandlingの方はクラス名変えるだけ

Queueファサード利用の方が多い?
Deprecated
• Middleware、TerminableMiddleware

インターフェースが非推奨で5.2で削除

機能はそのままで無くなりませんよ!

PSR-7のため?
• filterは5.2で完全に利用できなくなります

ミドルウェアに移行しましょう
Deprecated
• BusDispatchesCommandsインターフェース
はJobsに変更されたので変えましょう

5.2で削除
• コンテナのbindSharedが5.2で削除

singletonと同じなのでそちらを使いましょう
コーディング規約
• フレームワーク本体がPSR-2へ

今までのPSR-0+オールマンスタイルから変更
• ユーザーが実装するところは皆さんの規約で
• 合わせるのは強制ではありません
New Feature!

一部5.0おさらい
route group
• groupにasを利用して名前もグループ化

Route::group(['as' => 'group'], function () {
get('/', ['uses' => 'IndexController@index', 'as' => 'index']);
});
CSRF token
• csrf_field()でinputタグから生成
• XSRF-TOKENがCookieに付与されているので

angularの方は使いましょう
• VerifyCsrfTokenミドルウェアでtokenチェックを除
外したいルートが指定できます

(内部でRequest::isを利用)
HTML, Form
• Laravelパッケージから外されています
• Laravelのilluminateコンポーネントでは

メンテナンスされていません 5.0止まり
• どうしても使いたい方はLaravelCollectiveへ

メンテナンスや新しい機能はそちらで
Modelsディレクトリは削除
• MVCパターンで作りたい場合はMVCで
• 他のアーキテクチャにしたい場合は

そのパターンで
• 自分でアーキテクチャを作るフレームワーク
• ディレクトリはpsr-4で自由で、

強制はされていません 作りやすいように
make:model
• 実行するとapp直下に作られるんですけど・・
• ええ、そこが置き場なの?!
$ php artisan make:model ModelsMessage
指定したディレクトリに

置かれるので心配無用です
laravel elixir
• gulpを使った開発支援タスクランナー
• less, sassコンパイルやphpunit自動実行など
• 最新バージョンからbabelタスク追加

ECMAScript2015がブラウザで!
• elixir.jsonでパス変更などができます

(ソース読みましょう)
middleware
• ミドルウェアで引数が利用できるように

'middleware' => ‘role:editor'
• 邪魔なミドルウェアは中身を見て外しましょう

CookieやSession管理や

メンテナンスモード判定のミドルウェアが

最初から全て有効になってます
Request
• validationはフォームリクエストを利用した方
がスムーズです
• PSR-7対応で好きなライブラリを自由に

(対応しているものであれば)
Broadcast
• Redis pubsub / pusher(海外サービス)を使っ
て簡単にwebsocketが利用可能
• socket.io利用であればRedis(pubsub)の方が早
いのでおすすめ
Faker factory
• Fakerを使って簡単にデータをつくれます
• テストがより簡単に
• Mockeryと一緒に使うと色々できます
functional test
• クローリングするテストがより分かりやすく簡単
に(Controller)
• ファンクショナルテストがより簡単に
• ミドルウェアなどを無効にしたり、

テスト時に自動でmigrationをするtraitも

(tearDownでロールバックしてくれます)
用途にあった
コンポーネントを使って
快適な開発生活を
ご静聴
ありがとうございました

Mais conteúdo relacionado

Mais procurados

PHPとJavaScriptの噺
PHPとJavaScriptの噺PHPとJavaScriptの噺
PHPとJavaScriptの噺
Shogo Kawahara
 
Phpフレームワーク 「laravel」でブログを作ろう
Phpフレームワーク 「laravel」でブログを作ろうPhpフレームワーク 「laravel」でブログを作ろう
Phpフレームワーク 「laravel」でブログを作ろう
Syouta Tada
 
PHP x AWS でスケーラブルなシステムをつくろう
PHP x AWS でスケーラブルなシステムをつくろうPHP x AWS でスケーラブルなシステムをつくろう
PHP x AWS でスケーラブルなシステムをつくろう
Taiji INOUE
 
PHPUnit でテスト駆動開発を始めよう
PHPUnit でテスト駆動開発を始めようPHPUnit でテスト駆動開発を始めよう
PHPUnit でテスト駆動開発を始めよう
Yuya Takeyama
 

Mais procurados (20)

Laravelを使ってみた
Laravelを使ってみたLaravelを使ってみた
Laravelを使ってみた
 
phpspecで始めるBDD
phpspecで始めるBDDphpspecで始めるBDD
phpspecで始めるBDD
 
PHPとJavaScriptの噺
PHPとJavaScriptの噺PHPとJavaScriptの噺
PHPとJavaScriptの噺
 
〜laravel で学ぶ MVC
 〜laravel で学ぶ MVC 〜laravel で学ぶ MVC
〜laravel で学ぶ MVC
 
Phpフレームワーク 「laravel」でブログを作ろう
Phpフレームワーク 「laravel」でブログを作ろうPhpフレームワーク 「laravel」でブログを作ろう
Phpフレームワーク 「laravel」でブログを作ろう
 
Laravelのパッケージのテストに便利なパッケージ
Laravelのパッケージのテストに便利なパッケージLaravelのパッケージのテストに便利なパッケージ
Laravelのパッケージのテストに便利なパッケージ
 
フレームワークを使うべき 3 つの理由
フレームワークを使うべき 3 つの理由フレームワークを使うべき 3 つの理由
フレームワークを使うべき 3 つの理由
 
恋に落ちるデプロイツール
恋に落ちるデプロイツール恋に落ちるデプロイツール
恋に落ちるデプロイツール
 
脆弱性もバグ、だからテストしよう PHPカンファンレス2015
脆弱性もバグ、だからテストしよう PHPカンファンレス2015脆弱性もバグ、だからテストしよう PHPカンファンレス2015
脆弱性もバグ、だからテストしよう PHPカンファンレス2015
 
Behat Driven Development
Behat Driven DevelopmentBehat Driven Development
Behat Driven Development
 
PHP x AWS でスケーラブルなシステムをつくろう
PHP x AWS でスケーラブルなシステムをつくろうPHP x AWS でスケーラブルなシステムをつくろう
PHP x AWS でスケーラブルなシステムをつくろう
 
Laravelから学びレガシーと闘いはじめた
Laravelから学びレガシーと闘いはじめたLaravelから学びレガシーと闘いはじめた
Laravelから学びレガシーと闘いはじめた
 
第21回関西PHP勉強会 ReactPHPは もっと流行って欲しい #phpkansai
第21回関西PHP勉強会 ReactPHPは もっと流行って欲しい #phpkansai第21回関西PHP勉強会 ReactPHPは もっと流行って欲しい #phpkansai
第21回関西PHP勉強会 ReactPHPは もっと流行って欲しい #phpkansai
 
PHPの今とこれから2015
PHPの今とこれから2015PHPの今とこれから2015
PHPの今とこれから2015
 
いまどきのPHP開発現場 -2015年秋-
いまどきのPHP開発現場 -2015年秋-いまどきのPHP開発現場 -2015年秋-
いまどきのPHP開発現場 -2015年秋-
 
YAPC::Asia 2014 - 半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情
YAPC::Asia 2014 - 半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情YAPC::Asia 2014 - 半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情
YAPC::Asia 2014 - 半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情
 
Javaで1から10まで書いた話(sanitized)
Javaで1から10まで書いた話(sanitized)Javaで1から10まで書いた話(sanitized)
Javaで1から10まで書いた話(sanitized)
 
Drupal 8 - モダンなアーキテクチャのPHPベースOSS CMS
Drupal 8 - モダンなアーキテクチャのPHPベースOSS CMSDrupal 8 - モダンなアーキテクチャのPHPベースOSS CMS
Drupal 8 - モダンなアーキテクチャのPHPベースOSS CMS
 
PHPUnit でテスト駆動開発を始めよう
PHPUnit でテスト駆動開発を始めようPHPUnit でテスト駆動開発を始めよう
PHPUnit でテスト駆動開発を始めよう
 
Taming robotframework
Taming robotframeworkTaming robotframework
Taming robotframework
 

Semelhante a Laravel5.1 Release

Laravel5.5から6.4にアップグレードしたときに必要だった7つのこと
Laravel5.5から6.4にアップグレードしたときに必要だった7つのことLaravel5.5から6.4にアップグレードしたときに必要だった7つのこと
Laravel5.5から6.4にアップグレードしたときに必要だった7つのこと
Yuta Ohashi
 
なぜ、PHPのmbstring.func_overloadをdeprecatedにするのに5年かかったのか? - 慢心、環境の違い
なぜ、PHPのmbstring.func_overloadをdeprecatedにするのに5年かかったのか? - 慢心、環境の違い なぜ、PHPのmbstring.func_overloadをdeprecatedにするのに5年かかったのか? - 慢心、環境の違い
なぜ、PHPのmbstring.func_overloadをdeprecatedにするのに5年かかったのか? - 慢心、環境の違い
sasezaki
 
Laravel5にアップグレードする際に詰まった点
Laravel5にアップグレードする際に詰まった点Laravel5にアップグレードする際に詰まった点
Laravel5にアップグレードする際に詰まった点
fagai
 
Clojureの発表など
Clojureの発表などClojureの発表など
Clojureの発表など
Kikuta Go
 
What is java_se_7
What is java_se_7What is java_se_7
What is java_se_7
TakumiIINO
 
Firefoxの開発プロセス
Firefoxの開発プロセスFirefoxの開発プロセス
Firefoxの開発プロセス
Makoto Kato
 
GraalVMで使われている、他言語をJVM上に実装する仕組みを学ぼう
GraalVMで使われている、他言語をJVM上に実装する仕組みを学ぼうGraalVMで使われている、他言語をJVM上に実装する仕組みを学ぼう
GraalVMで使われている、他言語をJVM上に実装する仕組みを学ぼう
Koichi Sakata
 

Semelhante a Laravel5.1 Release (20)

Laravel5.5から6.4にアップグレードしたときに必要だった7つのこと
Laravel5.5から6.4にアップグレードしたときに必要だった7つのことLaravel5.5から6.4にアップグレードしたときに必要だった7つのこと
Laravel5.5から6.4にアップグレードしたときに必要だった7つのこと
 
Laravel meetup5(Laravel meet NewSQL/VoltDB )
Laravel meetup5(Laravel meet NewSQL/VoltDB )Laravel meetup5(Laravel meet NewSQL/VoltDB )
Laravel meetup5(Laravel meet NewSQL/VoltDB )
 
なぜ、PHPのmbstring.func_overloadをdeprecatedにするのに5年かかったのか? - 慢心、環境の違い
なぜ、PHPのmbstring.func_overloadをdeprecatedにするのに5年かかったのか? - 慢心、環境の違い なぜ、PHPのmbstring.func_overloadをdeprecatedにするのに5年かかったのか? - 慢心、環境の違い
なぜ、PHPのmbstring.func_overloadをdeprecatedにするのに5年かかったのか? - 慢心、環境の違い
 
Docker friendly PHP / Laravel
Docker friendlyPHP / LaravelDocker friendlyPHP / Laravel
Docker friendly PHP / Laravel
 
RFC: "var" Deprecation
RFC: "var" DeprecationRFC: "var" Deprecation
RFC: "var" Deprecation
 
PhpStormを使おう --高槻からは快速急行が早くなります #jbugj
PhpStormを使おう --高槻からは快速急行が早くなります #jbugjPhpStormを使おう --高槻からは快速急行が早くなります #jbugj
PhpStormを使おう --高槻からは快速急行が早くなります #jbugj
 
Laravel5にアップグレードする際に詰まった点
Laravel5にアップグレードする際に詰まった点Laravel5にアップグレードする際に詰まった点
Laravel5にアップグレードする際に詰まった点
 
Clojureの発表など
Clojureの発表などClojureの発表など
Clojureの発表など
 
恐るべきApache, Web勉強会@福岡
恐るべきApache, Web勉強会@福岡恐るべきApache, Web勉強会@福岡
恐るべきApache, Web勉強会@福岡
 
OSC福岡 20111203
OSC福岡 20111203OSC福岡 20111203
OSC福岡 20111203
 
What is java_se_7
What is java_se_7What is java_se_7
What is java_se_7
 
20150228_渋谷Webエンジニア朝会LT資料
20150228_渋谷Webエンジニア朝会LT資料20150228_渋谷Webエンジニア朝会LT資料
20150228_渋谷Webエンジニア朝会LT資料
 
PHP フィールドインジェクションに挑戦する PHP勉強会2014
PHP フィールドインジェクションに挑戦する PHP勉強会2014PHP フィールドインジェクションに挑戦する PHP勉強会2014
PHP フィールドインジェクションに挑戦する PHP勉強会2014
 
Composer
 Composer Composer
Composer
 
Firefoxの開発プロセス
Firefoxの開発プロセスFirefoxの開発プロセス
Firefoxの開発プロセス
 
Play jjug2012spring
Play jjug2012springPlay jjug2012spring
Play jjug2012spring
 
Laravel5.1をつかったWebアプリケーション開発
Laravel5.1をつかったWebアプリケーション開発Laravel5.1をつかったWebアプリケーション開発
Laravel5.1をつかったWebアプリケーション開発
 
GraalVMで使われている、他言語をJVM上に実装する仕組みを学ぼう
GraalVMで使われている、他言語をJVM上に実装する仕組みを学ぼうGraalVMで使われている、他言語をJVM上に実装する仕組みを学ぼう
GraalVMで使われている、他言語をJVM上に実装する仕組みを学ぼう
 
PHPerのためのpostgresqlチューニングmini
PHPerのためのpostgresqlチューニングminiPHPerのためのpostgresqlチューニングmini
PHPerのためのpostgresqlチューニングmini
 
Ph perがawsと出会ってdev opsを目指した話
Ph perがawsと出会ってdev opsを目指した話Ph perがawsと出会ってdev opsを目指した話
Ph perがawsと出会ってdev opsを目指した話
 

Laravel5.1 Release