0

使用新的自动引用计数,您认为这会鼓励新的 iphone 开发人员忽略可可内存管理指南吗?从而促进糟糕的编码?

4

2 回答 2

3

在某种程度上,是的。我认为内存管理已经是你必须强迫自己注意的事情之一。将其中的大部分自动化会使日常编程变得更加模糊,因此更容易忽略您确实需要注意的时间。

也就是说,当前系统(非 ARC)也很容易出现问题。即使您确实注意引用计数,您仍然会时不时地发现自己存在难以追踪的泄漏。归根结底,我认为 ARC 是最好的。它节省了很多麻烦,(只需看看这里关于内存管理的问题的数量),但您必须更加了解 ARC 无法处理哪些情况,并避免过度依赖它。

于 2011-07-03T20:59:31.993 回答
1

由于保密协议,我们不能谈论细节,但是......

我认为这不会有帮助或有害,至少从人们理解内存管理的角度来看。他们将必须遵循命名约定,并理解为什么当他们将方法命名为“创建”时,他们会开始收到编译警告……他们仍然会理解并使用自动释放池。他们可能会较慢地获得这种理解,但他们最终会找到它。

我认为它会做的是让很多程序的内存使用比以前更正确。由于编译器可以进行优化,它将提高运行时速度。它将消除大量的打字和*误*打字。

就像任何主要为您管理内存的系统一样,仍然会有泄漏。哦,是的,会有泄漏(人们会理解他们想要或不想要的 ObjC 内存管理天气的很大一部分原因)......但是崩溃会减少很多,最终这对整个系统中最重要的参与者——每天运行应用程序的人。

于 2011-07-03T21:49:00.140 回答