myVariable.ToList()「To」プレフィックス( )、「As」プレフィックス(myVariable.AsEnumerable())、または「Get」プレフィックス( )をいつ使用するかを規定する命名規則の規則/ガイドラインを知っている人はいますmyVariable.GetHashCode()か?
6 に答える
慣例はないと思いますので、自分がしていることに最も適したものを使用してください。
- 「To」は何か新しいものを作成/変換します
- 「As」は、使用することによる同じfeの単なる「異なるビュー」です。
iterators - 「Get」は他のすべてのゲッターです
私の理解/慣習:
「To」は変換を実行します。ソースに固有のデータに基づいて、新しいオブジェクトがメモリ内に作成されます。
「As」はキャストを実行します。渡された同じ参照は、異なるタイプの「マスク」の後ろに返されます。
「Get」は、ソースを取り込み、その主要な製品が変換された結果である他のほとんどすべてを実行します。Getsは、計算の実行、子の返し、ストアからのデータの取得、デフォルト状態からのオブジェクトのインスタンス化などを実行できます。このようなメソッドのすべてに「Get」という名前を付ける必要はありませんが、ほとんどのメソッドは、計算、インスタンス化、プロジェクトなどを目的としています。変換してから、製品を返品します。主な目的は「ゲッター」です。
myObjに関連しない場合はList、接頭辞「To」を付けて変換します。myObjがのサブクラスである場合Enumerable、接頭辞「As」を付けてEnumerableとして指定します- と
myObjは関係ありませんが、 「Get」プレフィックスを使用Listして作成/作成できますList
TovsはvsAsのような違いともっと関係があると思いますclassinterface
つまり、AsEnumerableインターフェイスを実装するものを本当に返したいときを言っています。
ToList反対に、現在のオブジェクトの現在の状態を表す新しいオブジェクトを返します。つまり、ToDictionary同じデータを表す別の方法です。
3番目のGetメソッドは、オブジェクトのいくつかのプロパティ、または完全な状態ではなく、その状態の一部に関する何かを返します。
データベースでのCRUD操作にEntityFrameworkを使用している場合、実際にレコードにアクセスしようとするまで遅延実行を使用するAsEnumerable()を使用するのとは対照的に、.ToList()を使用するとクエリがその場で実行されます。
それは私が頭のてっぺんから思いついたものです。
As既存のデータの再解釈です。AsEnumerable何もしません。として実装されreturn input;ます。
To変換を意味します。
Get前者のいずれかを意味するものではありません。
これらのルールからの有効な逸脱が見つかります。彼らは石に設定されていません。