sql >> データベース >  >> RDS >> Mysql

phpシングルトンデータベース接続、このコードは悪い習慣ですか?

    シングルトンは悪いニュースです。

    • プログラムにグローバル状態を導入します。ほとんどのプログラマーは、グローバル状態が悪い理由をよく知っている必要があります。
    • シングルトンとそれを使用するクラスの間に密結合を導入します。これは、シングルトンも再利用せずに問題のクラスを再利用できないことを意味します。
    • シングルトンをモックに簡単に置き換えることができないため、シングルトンに依存するクラスの単体テストが問題になります。
    • クラスが独自の依存関係を解決しようとするコーディングスタイルを奨励します。これは、クラスが持つ依存関係に関する明確さを低下させる可能性があるため、悪いことです。
    • PHPにはシェアードナッシングアーキテクチャがあります。つまり、PHPシングルトンは実際にはシングルトンではなく、一度に複数のインスタンスが存在する可能性があります(オープンリクエストごとに1つ)。
    • 後日、シングルトンによって提供されているリソースが実際に複数必要であることに突然気付いた場合はどうなりますか?これは、あなたが思っているよりも一般的なシナリオです

    を見るとよいでしょう。 代わりに、上記の問題を解決します。



    1. SQLServer2016でのServiceBrokerの機能強化

    2. PostgreSQL-異なるタイムゾーンで日付をレンダリングする方法は?

    3. SQL Server AlwaysOn(可用性グループ)アーキテクチャとステップバイステップのインストール-1

    4. MySQLデータベースの文字セットと照合全体をUTF-8に変換するにはどうすればよいですか?