我有一个可能很愚蠢的问题。我来自编程语言,带有异常处理,例如C ++和C#。在Swift 1的时候,我遇到了带有错误对象的Cocoa Style(这有点让我想起了Microsoft COM中的ErrorObject)。
一段时间后,我开始在我的侧面项目应用程序中使用错误处理模式,其中我使用函数参数(闭包)进行错误处理:
public typealias FailureBlock = (error:NSError!)->Void
JournalEntryStorage.instance.createJournalEntry(journalInfo, failure:
{
error in
NSLog("Watch App saveNewEntryInJournal: \(error.description)")
})
这个解决方案当时看起来不错,因为函数参数强制我编写错误处理逻辑,或者我可以简单地调用传递的错误处理函数。
现在我们使用Swift 2进行了可靠的错误处理。我应该将代码完全更改为新模式吗?有很多代码。
您如何处理您的(遗留)代码和新的错误模式?
顺便说一句:我找到了原始的Cocoa方式,传递了一个错误指针并在Swift 1中处理它如此丑陋。也许我的方法更难看,但对我来说它似乎有效。
答案 0 :(得分:0)
我决定采用以下解决方案并提出问题:
a)我为所有异步函数调用留下了旧的错误处理模式。 b)我正在将所有同步函数转换为新的错误处理方案。
第一印象。代码更具可读性。