2013-10-22 72 views
0

我需要編寫一個程序來從文本文件中讀取內容。文本文件的格式可能不同。例如,對於格式A,第一列的寬度可以是20個字符,對於格式B可以是40個字符。文本文件的第一行包含格式類型。未來可能會有不同列寬的新格式。我正在考慮使用工廠模式,但我不確定使用DI可以使它更容易。在這種情況下建議的最佳設計/體系結構是什麼?該代碼可能有以下接口:工廠模式或依賴注入未來實現

public interface IFormat 
{ 
    int columnAWidth{ get; } 
} 

public interface IFormatFactory 
{ 
    IFormat GetFormat(string formatType); 
} 

回答

1

依賴注入不是來自工廠模式,或與此有關的任何圖案相互排斥。您應始終致力於減少代碼中的耦合以實現最大的可重用性。

要回答你的問題,這聽起來像工廠方法模式將滿足您的需求。您的具體類定義甚至可以從xml配置文件讀入。