マイレベMENUサーバーサイドサーバーサイドに関する記事を投稿しています。基礎テストGoチュートリアル基礎フロントエンドVue.jsインフラAWSマイレベサーバーサイドサーバーサイドに関する記事を投稿しています。基礎テストGoチュートリアル基礎フロントエンドVue.jsインフラAWSサーバーサイドフロントエンドインフラマイレベサーバーサイドサーバーサイドに関する記事を投稿しています。今回のデザインパターンは超シンプルです。Singletonパターンは、インスタンスをたった一つにするパターンです。これはDBやメーラー接続など基幹となるクラスを生成するときに利用します。今回は本当にシンプルなのでコードから見ていきましょうコードの例は下記になります。}}内容としては非常にシンプルですよねコンストラクタはprivateにする。唯一性を出すために、コンストラクタはprivate関数にします。インスタンスが存在しないときだけ生成します。}これで一度しかインスタンスが生成されずにすみます。self()でインスタンスを生成しますが、その後は生成したインスタンスをreturnします。これでインスタンスの唯一性を維持されます。使い道は基幹となるクラス今回のこのパターンの重要な箇所は、使い道です。いったときに使うのか?という話です。結論、基幹となるクラスに利用します。DB接続ドライバメーラー接続ドライバキャッシュ管理スレッドプール管理ソケット制御ドライバなどです。これらは複数インスタンスが必要がありません。何度もDBに接続するのは無駄です。DBに接続するのはたった1回で十分です。あとはその接続の維持すればいい。いったときに利用します。実例:DIコンテナLaravelで調べるとDIコンテナで利用されています。}このようにSingletonパターンでDIコンテナを実装されているので、LaravelはDIを簡単に実現できます。]この技術は本当にすごいですよねまとめということで今回はSingletonパターンでした。DB接続などに利用するため、フレームワークを使わず、自分達で一からアプリを構築する際に必須になります。1度接続したら、あとはそれを使い回す。いった際に利用するパターンでした。WEBエンジニア渋谷でWEBエンジニアとして働く。LaravelとVue.jsをよく取り扱い、誰でも仕様が伝わるコードを書くことを得意とする。Methodパターンを図解で説明2022年6月11日パロメータを管理するクラスでリファクタリングする。※サイト次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。(1)人気記事Vueでform送信前にデータを加工する方法Laravel8に静的解析であるLarastanを導入する方法2038年問題にLaravelで対応する方法。