的飛鏢風格指南建議使用constructors instead of static methods to create instances,因爲「命名的構造函數和工廠構造在達特給你所有的其他語言的靜態方法的靈活性,同時仍然允許調用點顯得像一個普通的構造函數調用「。飛鏢工廠(構造函數)與靜態方法;例如,爲什麼int.parse()不是工廠構造函數?
那麼是否有技術上的原因,因爲宣佈int.parse()
和double.parse()
爲靜態方法而不是工廠構造函數?
更一般地說,選擇通過Dart中的靜態(工廠)方法編寫工廠構造函數的指導原則是什麼?
是的,這似乎有點不一致。 'new int.fromString()'從這個角度來看更有意義。雖然'int.parse()'感覺更自然。 – ronag
這可能是另一個特殊的表現目的,但這實在是瘋狂的猜測。 – MarioP
@MarioP:是的,我想這是有道理的。但是,我希望編譯器能夠優化這樣的特殊處理是不必要的。 – ronag