Laravelのイベント&リスナを使ってObserverパターンを実装する
- Laravel
Laravelのイベント&リスナを使ってObserverパターンを実装します。この仕組みを使うと、処理の独立化や遅延処理など、便利&良い事が多く、上手く使いこなすと幸せになれます。オブザーバパターンとはデザインパターンの一つです。監視される側と監視する側の関係を持つプログラム構造で、監視される側の変化(イベント=発行)を、監視する側(リスナー=購読)がキャッチして処理を行う。という流れになります。
Laravelのイベント&リスナを使ってObserverパターンを実装します。この仕組みを使うと、処理の独立化や遅延処理など、便利&良い事が多く、上手く使いこなすと幸せになれます。オブザーバパターンとはデザインパターンの一つです。監視される側と監視する側の関係を持つプログラム構造で、監視される側の変化(イベント=発行)を、監視する側(リスナー=購読)がキャッチして処理を行う。という流れになります。
【5.6対応済み】これまでLaravel5では、フロントエンド開発においてJavaScript側にVue.jsをベーシックとして提供していましたが、5.5からはReact.jsも選択できるようになりました。今回はLaravelをインストール後、VueではなくReactを導入し、開発を開始できるまでを行っていきます。
CMSや掲示板などでログイン機能を実装する際に、最近ではソーシャルログイン機能(OAuth認証)と言って、TwitterやfacebookなどのSNSのアカウントを利用してログインを行う流れが主流になっています。今回は、Laravel のSocialiteパッケージで、手軽にSNSソーシャルログイン機能(OAuth認証)を実装してみたいと思います。
メジャーバージョンアップの時はあれがこれにこれがあれにと変更されて…アップデートした途端にエラー吐きまくってまともに動かなくなり…というのは、抱きがちな不安の種の一つです。ですがLaravelをどの程度まで深く使っているかによっては(基本MVC程度とか)案外素直にアップデート出来てしまいます。
Laravelに限らずPHPフレームワークにて開発を進めていると、自作のhelper(ヘルパー)関数が必要になった時に、それらをどう管理していくかというのは毎回悩ましいところでもあります。今回は、機能ごとに複数のヘルパーファイルを作成しても、それを自動的にLaravelがヘルパー関数として読み込んでくれる仕組みを作りたいと思います。
LaravelにビルドツールであるWebpackを導入(Laravel Mix)して、sassやJavaScriptをビルドしたりminifyできる環境を作りましょう。sassやLessなどのCSS周り以外にも、ReactをはじめES2015・ES2016等、Babelなどのトランスパイラの必要なJSなどに対してもコンパイルが行えます。