C# ガイドの「方法」セクションでは、一般的な質問に対する簡単な回答を見つけることができます。 場合によっては、複数のセクションに記事が記載されている場合があります。 複数の検索パスを簡単に見つけられるようにしたいと考えました。
一般的な C# の概念
C# 開発者の一般的なプラクティスとして、いくつかのヒントとテクニックがあります。
- オブジェクト初期化子を使用してオブジェクトを初期化します。
- 演算子のオーバーロードを使用します。
- カスタム拡張メソッドを実装して呼び出します。
-
拡張メソッドを使用して、
enum
型の新しいメソッドを作成します。
クラス、レコード、構造体のメンバー
プログラムを実装するクラス、レコード、構造体を作成します。 これらの手法は、クラス、レコード、または構造体を記述するときによく使用されます。
- 自動的に実装されるプロパティを宣言します。
- 読み取り/書き込みプロパティを宣言して使用します。
- 定数を定義します。
-
文字列出力を提供するために
ToString
メソッドをオーバーライドします。 - 抽象プロパティを定義します。
- xml ドキュメント機能を使用してコードを文書化します。
- パブリック インターフェイスを簡潔に保つために、インターフェイス メンバーを明示的に実装します。
- 2 つのインターフェイスのメンバーを明示的に実装します。
回収作業
これらの記事は、データのコレクションの操作に役立ちます。
文字列の操作
文字列は、テキストの表示または操作に使用される基本的なデータ型です。 これらの記事では、文字列に関する一般的なプラクティスを示します。
- 文字列を比較します。
- 文字列の内容を変更します。
- 文字列が数値を表しているかどうかを判断します。
-
String.Split
を使用して文字列を区切る。 - 複数の文字列を 1 つに結合します。
- 文字列内のテキストを検索します。
型間の変換
オブジェクトを別の型に変換することが必要な場合があります。
- 文字列が数値を表しているかどうかを判断します。
- 16 進数を表す文字列と数値を変換します。
-
文字列を
DateTime
に変換します。 - バイト配列を int に変換します。
- 文字列を数値に変換します。
-
パターン マッチング、
as
演算子、およびis
演算子を使用して、別の型に安全にキャストします。 - カスタム型変換を定義します。
- 型が null 許容値型かどうかを判断します。
- null 許容値型と null 非許容値型の間で変換します。
等価性と順序の比較
等価性に関する独自の規則を定義する型を作成したり、その型のオブジェクト間で自然な順序を定義したりできます。
例外処理
.NET プログラムは、例外がスローされたことによってメソッドの作業が完了しなかったことを報告します。 これらの記事では、例外を処理する方法について説明します。
デリゲートとイベント
戦略で疎結合のコード ブロックを利用するための機能を提供するのは、デリゲートとイベントです。
イベントは、通知を発行またはサブスクライブするメカニズムを提供します。
- イベントの登録と解除
- インターフェイスで宣言されたイベントを実装します。
- コードでイベントを発行する場合は、.NET ガイドラインに準拠します。
- 派生クラスから基底クラスで定義されたイベントを発生させます。
- カスタム イベント アクセサーを実装します。
LINQ のプラクティス
LINQ を使用すると、LINQ クエリ式パターンをサポートする任意のデータ ソースに対してクエリを実行するコードを記述できます。 これらの記事は、パターンを理解し、さまざまなデータ ソースを操作するのに役立ちます。
- コレクションのクエリを実行します。
-
クエリ式で
var
を使用します。 - クエリから要素プロパティのサブセットを返します。
- 複雑なフィルター処理を使用してクエリを記述します。
- データ ソースの要素を並べ替えます。
- 複数のキーの要素を並べ替えます。
- プロジェクションの種類を制御します。
- ソース シーケンス内の値の出現回数をカウントします。
- 中間値を計算します。
- 空のクエリ結果をデバッグします。
- LINQ クエリにカスタム メソッドを追加します。
複数のスレッドと非同期処理
最新のプログラムでは、多くの場合、非同期操作が使用されます。 これらの記事は、これらの手法の使用方法を学習するのに役立ちます。
-
System.Threading.Tasks.Task.WhenAll
を使用して非同期パフォーマンスを向上させます。 -
async
とawait
を使用して、複数の Web 要求を並列で行います。 - スレッド プールを使用します。
プログラムのコマンド ライン引数
通常、C# プログラムにはコマンド ライン引数があります。 これらの記事では、これらのコマンド ライン引数にアクセスして処理する方法について説明します。
.NET