gpt4 book ai didi

objective-c - iOS/Objective C 中异常使用的优缺点

转载 作者:可可西里 更新时间:2023-11-01 03:07:13 25 4
gpt4 key购买 nike

<分区>

我在 exception 上阅读了 Apple 的推荐用法和NSError用法:

另外,我看了几个类似的栈溢出问题,讨论是否使用异常。

Exception Handeling in iOS

Using exceptions in Objective-C

Objective-C Exceptions

我正在尝试弄清楚在 iOS 中使用异常作为错误通知/处理方法的优缺点(坦白说,我对 Apple 的这句话并不满意(它说了要做什么,但没有说为什么我们应该这样做它):

You should reserve the use of exceptions for programming or unexpected runtime errors such as out-of-bounds collection access, attempts to mutate immutable objects, sending an invalid message, and losing the connection to the window server. You usually take care of these sorts of errors with exceptions when an application is being created rather than at runtime.

异常使用优点:

  • 不需要修改错误生成代码和错误处理代码之间的所有中间代码

  • 它不会污染方法的参数和返回值

缺点:

  • 对于所有手动管理的内存代码,我们必须格外小心(我们需要将其包装在自动释放对象中以确保释放资源)。

  • 我们需要注意我们的代码和框架之间的界限。如果我们的异常离开我们的代码,我们可能会有麻烦(因为框架可能手动管理内存)

我错过了什么吗?还有其他缺点/优点吗?

看起来异常对于类似库的代码应该没问题(当我们有大量紧密打包的代码时,这些代码不会与外部系统/框架进行太多通信。而且看起来异常很难用于主动与其他框架交互的代码。

您的经验是否证明了这一理论?

我很感激关于这个主题的任何额外信息。

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com