5

iOS 5 の本の 1 つを読んでいるときに、次のような情報に出くわしました。

「ARC を使用すると、オブジェクト管理を気にせずにアプリケーションを簡単に作成できますが、多くのサードパーティ ライブラリでは、オブジェクトを手動で解放する必要があります。この本では、すべてのプロジェクトが ARC をオフにして作成されています (...)」 .

私は iOS 開発が初めてで、それをどのように解釈すればよいかわかりません。iOS のメモリ管理を理解することは非常に (非常に) 重要なことのようですが、ARC は単なる優れた機能であり、サポートされていないか、使用できないため、覚えずに始めなければならないことを理解しておく必要があります。多くの状況?

4

6 に答える 6

12

ARCを使用してください。これは、過去 5 年間に起こったこの言語への最高の追加です。手続き的な方法ではなく、より宣言的な方法でメモリ管理を処理できるため、多くの「定型コード」を書く必要がなくなります。

これは、手動のメモリ管理について学ぶことが重要でないと言っているわけではありません。それがどのように機能するかを確実に理解し、ARC を使用せずに記述されたコードを読むことができる必要があります。しかし、新しく開発されたコードに関する限り、ARC を使用し続ける必要があります。手動のメモリ管理では、多くの開発作業が無駄になるからです。

いっそのこと、別の本を手に入れてください: 著者は ARC の例を作り直すのに十分な時間がなかったようです。

于 2013-03-05T11:36:47.583 に答える
1

ARCは、Appleが提供する最高の機能の1つです。

ARCは、メモリ管理の問題に関連するオーバーヘッドを処理します 。また、AppleはARCの使用を推奨しています。

それを最大限に活用し、メモリのオーバーヘッドをなくすために、それをよりよく使用しないのではなく

ARCを利用することをお勧めしますが、内部でARCによってメモリがどのように管理されているかを調べてください。

ただし、 iOS 4.0より前のデプロイメントターゲットで アプリケーションを開発する必要がある場合は、メモリを手動で保持-解放する 必要があります。

于 2013-03-05T11:43:43.040 に答える
1

私は今でも ARC 以外のプロジェクトを作成することを好みます。

しかし、数週間前にこの素晴らしい記事http://www.raywenderlich.com/5677/beginning-arc-in-ios-5-part-1 を書きましたが、これは Apple が提供する素晴らしい機能のようです。

では、試してみたいと思います。私の大学の多くはすでに ARC を使用しており、うまく機能していることがわかります。

しかし、私が言いたいことの 1 つは、ARC はコードを書く必要があり、メモリ管理について心配する必要がないという意味ではありません。ARC - これは別のものです。ARC には独自のメモリ管理ルール/法則があり、コードを記述する際に留意する必要があります。

于 2013-03-05T11:36:11.407 に答える
1

それは個人的な選択です。

ARC を使用すれば、メモリ管理に悩まされることはありません。

しかし、MRC (Manual Retain count) を使用して本格的なアプリを作成する方法を知っている場合は、ARC を使用することも悪くありません。

ある特定の時間に ARC でも、メモリを割り当てて解放する必要があるため、MRC を学習する必要があります。

于 2013-03-05T11:38:12.130 に答える
1

Objective C を初めて使用する場合は、プロジェクトで ARC を使用することをお勧めします。ARC は安定しており、メモリ管理が非常に簡単になります。

手動のメモリ管理にまだ準拠しているサードパーティのライブラリがいくつかあるという本は正しかったです。しかし、これらのライブラリのほとんどは現在、ARC バージョンも提供しています。そうでない場合でも、静的ライブラリ プロジェクトとして追加することで、ARC プロジェクトでそれらを使用できます。また、特定のファイルごとに ARC を無効にすることもできます。

私が iOS 開発を始めたのは ARC の前の時代でした。最初は手動のメモリ管理が難しかったです。まず、ARC があるので、間違いなく ARC です。時間のあるときに、手動のメモリ管理を理解するようにしてください。

免責事項 : 私はまだ ARC をあまり使用していませんが、まずは ARC を使用することをお勧めします。

于 2013-03-05T11:38:46.770 に答える
1

ARC は使いやすく、初心者にとって非常に役立ちます。サード パーティのライブラリが含まれている場合、その特定のファイル (または) ライブラリの ARC を無効にするオプションを使用できます。

特定のファイルの ARC を無効にするには:

ARC を必要としないファイルのコンパイラ フラグに-fno-objc-arcを追加します。Xcode 4 では、ターゲットの下でこれを行うことができます -> Build Phases -> Compile Sources.

メモリ管理を最初から理解したい場合は、ARC を無効にして自分で試してみてください。それはあなたを大いに助けるかもしれません

于 2013-03-05T11:38:54.997 に答える