2012-11-27 68 views
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 
    } 
} 

在這裏,一個我試圖消除方法之間的耦合的屬性(屬性) 這是「隱私數據」設計模式?

回答

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; 
    } 
} 

但同樣,如果你獨立於Point使用的x/y值,只會有利於你。