1

「プライベート データ クラスのデザイン パターン」に関する質問があります。

「プライベート データ クラス デザイン パターン」でデータ クラスへのアクセサーを取得および設定することは可能ですか。以下のように

public class CircleData {
    public double Radius { get; set; }
    public Color Color { get; set; }
    public Point Point { get; set; }
}

public class Circle {
    public void Draw(CircleData circleData)
    {
        // Perform the draw operation
    }
}

ここで、メソッドと属性 (プロパティ) の間の結合を排除しようとしましたが、これは「プライベート データ」のデザイン パターンですか?

4

1 に答える 1

1

チャットで述べたように、このプライベート クラス データ パターンであなたがしようとしていることがあなたにとって有益かどうかはわかりません。

プロパティのプライベートバッキングストアを明示的に実装していませんが、技術的にはプライベートデータにアクセスするパブリックプロパティがあることが暗示されていますが、パターン全体のポイントはクラスの内部情報を隠すことだと思います.

より良い例は、次のフィールド/プロパティです。

private int _x = 5;
private int _y = 15;

public Point Point { 
    get {
        return new Point(_x, _y);
    }
    set {
        _x = value.X;
        _y = value.Y;
    }
}

しかし、繰り返しになりますが、これは、.x/y 値をPoint.

于 2012-11-27T13:27:01.283 に答える