asp.net/c#では、複数人がサイトに接続するサーバー側のソリューションとして、複数のクラスを持っています。ただし、静的でないままにしておくと、それらのオブジェクトの 1 つだけを作成することになります。それらを静的クラスにするか、非静的のままにして1つのオブジェクトを作成してそれを使用する方が効率的かどうかを知りたいです。
ありがとう。
asp.net/c#では、複数人がサイトに接続するサーバー側のソリューションとして、複数のクラスを持っています。ただし、静的でないままにしておくと、それらのオブジェクトの 1 つだけを作成することになります。それらを静的クラスにするか、非静的のままにして1つのオブジェクトを作成してそれを使用する方が効率的かどうかを知りたいです。
ありがとう。
静的クラスの方が高速です。少し。しかし、非静的クラスは非常に柔軟であり、それを放棄するのはもったいないことです。決して必要ないかもしれませんが、必要な場合はそこにあることを知っておくと便利です.
例:
これらのクラスの 1 つのコピーが 2 つ以上必要になる日が来るかもしれません。今日のあなたの宇宙全体は、明日のシステムの小さな一部になる可能性があります. 今日の太陽は明日、100,000 個の星のうちの 1 つにすぎません。
単一インスタンスの変更されたコピーをメソッドに渡すと便利な場合があります。これにより、公式の単一インスタンスで動作するように記述されたコードを他の用途に使用できます。
非静的クラスは、他のクラスおよびインターフェースを拡張できます。単一インスタンス クラスのいくつかは、インターフェイスを実装して、相互に置き換えることができるようにする必要がある場合があります。また、いくつかは同じ機能を共有し、別のクラスから継承したい場合があります。
(そして、他にも多くの正当な理由があるはずです。)