我一直在閱讀,通過在代碼中使用靜態類/單例,創建依賴項,是不好的形式,併產生問題,即。緊耦合和單元測試。實用程序類別..好還是壞?
我有一個情況我有一組是沒有與之相關聯的狀態,並執行僅使用方法的輸入參數的操作URL解析方法。我相信你對這種方法很熟悉。
在過去,我會着手創建一個類,並添加這些方法,直接從我的代碼如給他們打電話。
UrlParser.ParseUrl(url);
但是等一下,那就是引入了對另一個類的依賴。我不確定這些'效用'類是否是壞的,因爲它們是無狀態的,並且這最大限度地減少了所述靜態類和單例的一些問題。有人能澄清這一點嗎?
我應該移動的方法來調用類,即如果只是調用的類將使用的方法。這可能違反「單一責任原則」。
「我有一種情況,我有一組url解析方法,它們沒有與它們相關聯的狀態,並且只使用方法的輸入參數執行操作,我相信你很熟悉這種方法。這種方法將被稱爲純函數 – morphles 2011-05-02 09:51:37
檢查此博客文章(主要談論Java,但仍然在這裏相關):http://www.yegor256.com/2014/05/05/oop-alternative-to-utility-classes。 html – yegor256 2014-05-06 11:13:14