C# メソッドチェーン作成チュートリアル
🔹 メソッドチェーンって何?
メソッドチェーン(Method Chaining)は、「.(ドット)」を使ってメソッドを続けて呼び出す書き方 です。
例えば、ふつうの方法だと、こう書きます:
Car myCar = new Car();
myCar.SetColor("Red");
myCar.SetSpeed(100);
myCar.ShowInfo();
メソッドチェーンを使うと?
new Car().SetColor("Red").SetSpeed(100).ShowInfo();
✔ 1行でスッキリ書ける!
🔹 ステップ 1:普通のメソッド
まずは、メソッドチェーンを使わないクラスを作ります。
public class Car
{
private string color;
private int speed;
public void SetColor(string newColor)
{
color = newColor;
}
public void SetSpeed(int newSpeed)
{
speed = newSpeed;
}
public void ShowInfo()
{
Console.WriteLine($"車の色: {color}, 速度: {speed} km/h");
}
}
class Program
{
static void Main()
{
Car myCar = new Car();
myCar.SetColor("青");
myCar.SetSpeed(120);
myCar.ShowInfo();
}
}
☑ 問題点
SetColor()
、SetSpeed()
をバラバラに呼び出すのでコードが長い- まとめて書けたらスッキリするのに…
🔹 ステップ 2:メソッドチェーンを作る
メソッドチェーンを作るには、メソッドの最後に return this;
を追加 します。
public class Car
{
private string color;
private int speed;
public Car SetColor(string newColor) // 戻り値を Car にする
{
color = newColor;
return this; // 自分自身を返す
}
public Car SetSpeed(int newSpeed) // 戻り値を Car にする
{
speed = newSpeed;
return this; // 自分自身を返す
}
public void ShowInfo()
{
Console.WriteLine($"車の色: {color}, 速度: {speed} km/h");
}
}
class Program
{
static void Main()
{
new Car()
.SetColor("赤") // ここで色を設定
.SetSpeed(150) // ここで速度を設定
.ShowInfo(); // 最後に表示
}
}
✅ メソッドチェーンのポイント
- 戻り値を
Car
にする return this;
で自分自身を返す- 「.(ドット)」でつなげて書けるようになる
🔹 ステップ 3:もう少し便利に!
さらに WithColor()
や WithSpeed()
のように、わかりやすい名前 にすると、読みやすくなります。
public class Car
{
private string color;
private int speed;
public Car WithColor(string newColor)
{
color = newColor;
return this;
}
public Car WithSpeed(int newSpeed)
{
speed = newSpeed;
return this;
}
public void Show()
{
Console.WriteLine($"🚗 車の色: {color}, 速度: {speed} km/h");
}
}
class Program
{
static void Main()
{
new Car()
.WithColor("白")
.WithSpeed(200)
.Show();
}
}
✔ 「〇〇を設定する」という感じでわかりやすく!
🔹 まとめ
✅ メソッドチェーンを使うと?
- 1行でスッキリ書ける!
- オブジェクトの設定を簡単にできる!
- コードが見やすくなる!
実際のプログラムでも使われている書き方なので、ぜひ試してみてください!🚀
ディスカッション
コメント一覧
まだ、コメントがありません