[英]Best practice create a C# Object which reflect and generate a Serialized string
[英]Best Practice for Loading Object from Serialized XML in C#
問候,
我有一個可以從文件構造的特定對象,例如:
public class ConfigObj
{
public ConfigObj(string loadPath)
{
//load object using .Net's supplied Serialization library
//resulting in a ConfigObj object
ConfigObj deserializedObj = VoodooLoadFunction(loadpath);
//the line below won't compile
this = thisIsMyObj;
}
}
我想本質上說:“好,現在我們剛剛反序列化了這個對象,這實際上就是我們想要的對象。” 有幾種方法可以做到這一點,我想知道哪種方法是最佳實踐。 我的想法是:
我對這兩個都不滿意。 這里公認的最佳實踐是什么?
第二種選擇是所謂的工廠方法 ,這是一種常見的設計技術。 如果您確實使用了此技術,則可能會發現在實際加載該類之前需要知道要加載的類的類型。 如果遇到這種情況,則可以使用更高級別的工廠類型來查看流,並為適當的類類型調用工廠方法。
使用靜態方法而不是構造函數沒有什么錯。 實際上,它具有許多優點 。
我總是選擇靜態方法。 通常,它是一種已加載的層次結構,因此只有根對象才需要該方法。 在.NET框架(例如Graphics.FromImage)中,這並不是一種異常的方法,因此對於您的類用戶來說應該沒問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.