幾周前,我開始在非平凡的應用程序中首次使用Core Data。讓我感到驚訝和困惑的事情之一是錯誤處理的工作原理。舉個例子,我嘗試的第一件事就是將我的數據文件設置爲Finder中的「鎖定」,以便確保在設置文件URL時正確處理由引用返回的NSError對象。令我驚訝的是,持久性商店協調員不是返回nil並設置NSError,而是從底層的NSData中提取未捕獲的異常!Core Data中的錯誤處理
與此同時,好像錯誤處理是一個有點不必要有時在覈心數據。例如,我沒有看到任何明顯的原因,爲什麼取出請求會需要超出程序員錯誤的錯誤處理(順便說一句,這也引發了我的經驗中的異常)。在這些情況下,我一直在爲NSError引用指針傳遞NULL。
在try/catch塊和NSError之間我可能花了很多時間來編寫代碼來安撫Core Data,但是我想對它做實踐,所以我沒有花費時間在永遠不會運行的錯誤代碼上。考慮到這一點,您如何在應用程序中處理錯誤處理?你在現實世界中看到了什麼錯誤,你應該確保說明什麼?
這是一個很好的建議,但我真的希望得到一些更實用的建議,以瞭解我最可能遇到的真實世界核心數據應用程序出現哪些錯誤。 – 2008-11-22 22:36:25