Laravelのコレクションが何なのかを調べたまとめ

122 回閲覧されました
みなさんこんにちは、jonioです。
Laravelを使って1年位経つのですがネットを調べている時に「コレクション」という言葉を見つけました。
ずっと後回しにしていたのですがさすがに何なのかを知ってないとマズイと思い、調べてこの記事を書いています。
言葉だけでは分かりにくいので例で説明します。
コレクションとは
あるシステムを作る会社にデータベースから情報を持って来るSQLさんがいたとします。
この人がデータベースから取ってきたデータは分かりにくくてプログラマから嫌われています。
あまりにもデータが分かりにくかったのでプログラマ達からブーイングの嵐になりSQLさんは交代になりました。
そしてデータベースからデータを取ってくるのが上手なクエリビルダさんに変更になりました。
クエリビルダさんが取ってくるデータは分かりやすくて人気があります。
でも新人プログラマにはクエリビルダさんのデータは難しく感じました。
そこで新人プログラマでも理解できるようにする為にEloquent(エロクアント)さんがクエリビルダさんよりもっと分かりやすいデータを持ってきました。
確かにデータは分かりやすいですが配列で使う時のデータが使いにくくなっていました。
でもデータベースから取得するデータは分かりやすいのでエロくアントさんは交代にせず配列で使う時はサポート役を入れて使いやすくしました。
それがコレクションさんです。
これで配列のデータも使いやすくなって新人プログラマも安心してプログラムを書く事ができる様になりました。
最後に
「Laravelのコレクションは配列のラッパー」みたいな説明を見た事があるのですが私が初めて見た時は意味不明でした。
配列の機能を使いやすくするコレクションみたいに機能を使いやすくする人をラッパーと言います。
これでコレクションがイメージしやすくなったと思います。