Unterschied zwischen C # Teilklassen und Objective C Kategorien?

8

Ich bin neu bei Objective C. Nachdem ich ein paar Monate in iOS verbracht habe, habe ich Probleme, die Verwendung von Objective C Kategorien zu verstehen.

Sind dieselben wie C # -Teilklassen und werden verwendet, um große Klassen in Methoden zu unterteilen, die zu einer Anforderung gehören.

ODER gibt es mehr als nur so viel?

    
Amogh Talpallikar 30.01.2012, 07:42
quelle

2 Antworten

6

Objective-C-Kategorien sind eine Möglichkeit, Methoden zu vorhandenen Klassen hinzuzufügen. Sie können mit .NET-Erweiterungsmethoden verglichen werden.

Die Apple-Dokumentation ist ziemlich umfassend über Kategorien, also schlage ich vor, dass Sie es lesen, um die Vorteile zu verstehen.

Hinweis : Ein Vorteil von Kategorien gegenüber Erweiterungsmethoden besteht darin, dass Sie einer Klasse sowohl Instanz- als auch statische Methoden hinzufügen können.

    
Laurent Etiemble 30.01.2012, 07:48
quelle
4

Sie werden normalerweise eher wie Erweiterungsmethoden als wie Teilklassen verwendet.

Mit einer Kategorie in Objective-C können Sie Methoden zu einer Klasse hinzufügen, die jeder in Ihrem Programm implizit verwenden kann, als wären sie ein Teil der Klasse.

Es ist definitiv möglich , sie als Teilklassen zu verwenden, um Implementierungen auf mehrere Dateien aufzuteilen, aber ich bin mir nicht sicher, ob ich das jemals in der Praxis gesehen habe.

    
sblom 30.01.2012 07:48
quelle

Tags und Links