29
30

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Laravel Advent Calendar 振り返り

Last updated at Posted at 2014-12-24

最終日ですよ

メリークリスマス!Laravel Advent Calendar 2014最終日担当の @localdisk です。クリスマスに予定が入っていないので当日に書いています。やりましたね。

Advent Calendar を振り返って

今年の Advent Calendar を振り返って思うのは、やはり参加者が増えたことでしょうか。去年はアレでしたからね。

という3人で約7割消化するというね、無理矢理感がすごかった。それに較べて今年は多くても僕が3日だけなんでね。かなり楽になりました。それにやはり参加者が多いと読者として楽しみが多いです。どのエントリも面白かった!

…で、まぁ残念な点ですが完走できなかったことですかね(自分の事を棚に上げるのは得意です)。まぁ忙しいですからね。しょうがない部分はあります。ネタに走ってもよかったのよ?

というわけで、皆さんに書いて頂いたエントリを振り返っていきましょう。未読の方はどれも参考になると思うのでよかったら読んでみて下さいね。

1日目 : Laravel5 route, event アノテーション

Laravel5 新機能ネタ1発目ですね。この部分は結局どうなるかなぁと注意深く見守ってます。この機能がコミットされた当初は全面的に使っていく感じで routes.php が削除されたこともありました。現在はオプション扱いで「使いたい人はどうぞ」みたいになってます。
このエントリでルート定義時に $router->get という記述が使われていますが、この $routerApp\Providers\RouteServiceProvider から**来ていました。**来ていましたと過去形なのは RouteServiceProviderの実装が少し変わったようで現在 routes.php は従来の Facade を使用したものに変更されています。

2日目 : フロントエンド片手間ンによる Laravel Elixir 入門

僕が書いたやつ。これ書くために初めて node.jsgulp 入れました。Advent Calendar 駆動で勉強してエントリ起こしました。ここ僕より詳しい人たくさんいると思います。

3日目 : Laravel5 Testing, use Contracts

地味ですが、Laravel5 の目玉のひとつと言えると思います。これあるのとないのではコア部分を拡張する時の手数が全然違ってきます。
で、さらに素晴らしいのは、これ別に知らなきゃ知らないで別に困らないです。あくまで機能の拡張や置換、フレームワークの理解には必要なことですが、プロトタイピング等ライトに使う場合は特に覚える必要はありません。

4日目 : Laravel Socialite で簡単ソーシャルログイン

続き書く書く詐欺エントリ。年末休みにやっときます。すいません。

5日目 : Laravelでいくつかサービス作ってみた話

@syossan27 の Laravel を実戦投入した話。僕、実はあんまり仕事で Laravel 使ってないので羨ましかったり。あと、最後に書かれてるように Laravel 始めて「わかんねぇ!」ってなったら twitter でつぶやいて見てください。僕、Laravel で1日1回は検索してるので。見つけ次第お答えしますので。

6日目 : 派遣労働者から見た、「まずはこう使え、DIコンテナ」

現場のつらみがにじみ出てるエントリですね。これ読んだ時、過去の現場でとんでもソースに遭遇してウッってなった時のことを思い出しました。
Laravel5 からメソッドインジェクションがサポートされますので、コンストラクタで引数がえらいことになるのは、これからなくなると思います。あとは Mockery をうまく使ってテストを頑張って回してください…。

7日目 : connection を切り替えて relation の loading をしたかった時の話

アプリケーションの中で動的にコネクションを切り替えたい時の苦肉の策…といった感じのエントリですね。マスター/スレーブ構成なら Read/Write Connection 使ったり、決めうちなら Modelconnection フィールドを定義しておくということができるんですが、こういったケースは Eloquent では逆に複雑になっちゃうので Query Builder を使うのがおすすめです。

DB::connection('slave')...

といった感じで。

8日目 : Laravel5 コマンド登録とスケジュール機能について

これめっちゃ便利ですよね。以前から似たようなことは "indatus/dispatcher" で実現できてるんですが、今回はソースを取り込むのではなく自力実装した模様。これで cron に色々定義していたのが一元化できて管理しやすくなりました。

9日目 : 自分流 Laravel 4 アプリケーションアーキテクチャ

これ見たとき「なるほどなー」って声がでました。素で。会社で。Laravel をディープに使う人ってあまり Laravel デフォルトのディレクトリ構成を使わない傾向があるように思います。

デフォルトの構成だと意図的に名前空間を使ってない部分があって手軽な反面、名前がかぶってしまったらクラス名を変更する他ないですからね。

このエントリは PSR-4 をフルに使用することによってそういった問題を回避。Service層を設けて ControllerModel が結合しないようにしています。この Service層を用いる方法や、最近はやりの Repository パターンを見ると、昔 SIer で Java 開発していた頃を思い出します。

この他 Trait の使用など知見にあふれています。こういうのって実際の開発で試行錯誤しないと出てこないだろうなと。すごい。

良し悪しはともかくとして最近の PHP は J2EE(JavaEEじゃなくて) の頃のトレンドの後追いをしている感がありますね(DIとかAOPとか).

続きは来年で!このエントリをストックしておくと変更が通知されるので、続きが気になる方はぜひ。

良いお年を

29
30
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
29
30

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?