Utilities」クラスが邪道なら、ジェネリックコードはどこに置けばいい?[クローズド]。
2023-12-13 13:21:41
質問
私は一般的に、グローバル変数/関数は悪であり、コードのすべての部分がそれに関連するクラスの中で生きるべきだというルールに従って生きています。
これは非常に簡単なルールで、今までこのルールで問題にぶつかったことはないと思っています。
しかし今日、私はある機能を私の アセンブリ に関数を追加する必要があります。 つまり、私のほとんどすべてのクラスが は はこの特定の関数を使うことができるのです。
この関数(+1 オーバーロード)はどこに置くべきでしょうか?
もし私がそれを "Utilities" クラスに置くならば、私は汚れた感じがします。 もし私がそれを準関連クラスに貼り付けて、他のクラスがそれを直接呼び出すようにしたら、私はもっと悪い気がします。
この特定のコード片は基本的に
IList<PointF>
を正規化したリストに変換しています。 私は今、これを
IList<PointF>
の拡張メソッドとして追加することが最善の策かもしれません...
どのように解決するのですか?
の操作である場合、これは
IList<PointF>
に対する操作であるなら、それは
IList<PointF>
.
一般的に
Utils
と
Helper
型クラスは避けるべきです。多くの場合、あなたが持っている
を考える
が、実はかなり特殊なメソッドであり、おそらくそれ自身のクラスに属するものであることがわかります(あなたが言うように)。しかし、ドメイン固有のケースとして
Util
-のようなクラス (関連する有用なメソッドをグループ化するクラス) が有効なエンティティであるドメイン固有のケースがあります。
関連
-
[解決済み】Excel "外部テーブルが期待された形式ではありません。"
-
[解決済み】ASP.NET Core Dependency Injectionのエラーです。アクティブ化しようとしているときに、タイプのサービスを解決できません。
-
[解決済み】値が期待した範囲に収まらない
-
[解決済み】C#のequal to演算子でtextとvarcharのデータ型は互換性がない
-
[解決済み】別のスレッドがこのオブジェクトを所有しているため、呼び出し側のスレッドはこのオブジェクトにアクセスできない
-
[解決済み] 汎用クラスやメソッドのメンバからTの型を取得する方法
-
[解決済み] あるクラスがジェネリッククラスから派生しているかどうかをチェックする
-
[解決済み】匿名クラスの汎用リスト
-
[解決済み】「where T : class, new()」はどういう意味?
-
[解決済み] MATLAB OOPは遅いですか、それとも私が何か間違っていますか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】プログラム実行中に1秒待つ
-
[解決済み] [Entity Framework 4.1でエンティティに関連オブジェクトを追加する際に、エンティティオブジェクトをIEntityChangeTracker.の複数のインスタンスから参照できない。
-
[解決済み] 'SubSonic.Schema .DatabaseColumn' 型のオブジェクトをシリアライズする際に、循環参照が検出されました。
-
[解決済み】トランスポート接続からデータを読み取れない:既存の接続は、リモートホストによって強制的に閉じられました。
-
[解決済み】Socket.Selectがエラー "An operation was attempted on something that is not a socket" を返す。
-
[解決済み】EF 5 Enable-Migrations : アセンブリにコンテキストタイプが見つかりませんでした
-
[解決済み】パラメータ付きRedirectToAction
-
[解決済み】Unityでゲームオブジェクトのすべての子をループスルーして破壊する方法?
-
[解決済み】ファイルやアセンブリ、またはその依存関係の1つをロードできませんでした。
-
[解決済み] ユーティリティクラスは悪なのか?[クローズド]