Objective-C では、カテゴリを作成してクラスを拡張できます。基本的にはメソッドのみであるため、プロパティを追加することもできます。ただし、@synthesize またはその他の既知の方法でそれらをバインドすることはできません。したがって、それらを使用しようとすると、アプリがクラッシュします。
カテゴリでプロパティを使用することはありますか、それとも言語のロジックを壊して禁止するために可能でしょうか。カテゴリでプロパティを定義することが理にかなっているシナリオを教えてください。
Objective-C では、カテゴリを作成してクラスを拡張できます。基本的にはメソッドのみであるため、プロパティを追加することもできます。ただし、@synthesize またはその他の既知の方法でそれらをバインドすることはできません。したがって、それらを使用しようとすると、アプリがクラッシュします。
カテゴリでプロパティを使用することはありますか、それとも言語のロジックを壊して禁止するために可能でしょうか。カテゴリでプロパティを定義することが理にかなっているシナリオを教えてください。
カテゴリでプロパティを定義する主な用途は、クラス拡張を作成することです。クラス拡張を作成するときにカテゴリを使用すると、プロパティを定義してそれらを合成することもできます。これは、パブリックアクセスのためにプロパティを非表示にする方法です。
詳細については、これを確認できます-http://www.techpaa.com/2012/04/adding-properties-to-categories-and.html
カテゴリを使用すると、既存のクラスにメソッドを追加できます。ソースがないクラスにもメソッドを追加できます。カテゴリは、サブクラス化せずに既存のクラスの機能を拡張できる強力な機能です。
あなたがしたいので
基本的にはメソッドのみであるため、プロパティを追加します
カテゴリを使用して、クラスにメソッドを追加できます。