我有多少函數對操縱資源,例如功能:Scala的選項的一些/無成語該返回單元
def loadFile(name: String): Option[String]
def writeFile(name: String, data: String): ???
的loadFile目前實現使用選項的一些/無返回所得字符串但writeFile?
像的loadFile,如果WriteFile的失敗,我想它返回封裝在一個不錯的嘗試或選項的應答,而不是拋出一個異常或返回空值,布爾,或響應代碼。
什麼是一些推薦的最佳實踐?
def writeFile(name: String, data: String): Try(Unit)
或
def writeFile(name: String, data: String): Option(Unit)
,只是測試成功標誌?
什麼是最好的scala-thonic方法來處理這個問題?
如果你不關心成功的結果(除了成功),但是關心錯誤的結果(例外),那麼我肯定會贊成'嘗試[單位]'在'選項[單位]'。 – 2014-11-14 20:20:44
不要忘記'要麼',要麼! – 2014-11-14 20:35:49
選項[例外]將是我的解決方案 – 2014-11-14 21:00:30