Punkt-Operator in Objective-C 2.0

stimmen
3

Kommissionierung nur Objective-C 2.0 und wollte wissen, ob es in mit dem Punktoperator für den Zugriff auf Objekte anstelle der „alten“ Art und Weise jeder Vorteil ist. Kurzes Beispiel dafür, was ich meine.

Alter Weg:

 [myFraction setNumerator: 1];
 [myFraction setDenominator: 3];

neuer Weg:

 myFraction.numerator = 1;
 myFraction.denominator = 3;

Vielen Dank!

Rodrigo

Veröffentlicht am 04/03/2009 um 23:41
quelle vom benutzer
In anderen Sprachen...                            


5 antworten

stimmen
7

Der einzige Unterschied ist eine einfache Eingabe und Lesbarkeit. Die Meinung davon ist besser lesbar unterscheidet sich von Person zu Person :)

Beantwortet am 04/03/2009 um 23:44
quelle vom benutzer

stimmen
2

Ich mag eigentlich die neue Syntax - aber vielleicht, weil ich als Python-Programmierer arbeiten.

Die Dot-Eigenschaft Syntax kämmt gut mit Schlüssel-Pfaden in KVC / KVO. Es sieht ordentlicheres in meinen Augen als verschachtelte Klammern (und Ich mag Schema, also bin ich nicht Klammern Verschachtelung Gegensatz!) Und macht es ausdrücklich, wenn Sie eine Eigenschaft zugreifen, anstatt eine Message Passing - obwohl der Mechanismus der ist gleich.

Und ich sehe Eigentum Zugang eines Objekts ist (im Wesentlichen) derselben Operation als Mitglieder einer Struktur oder Vereinigung Zugriff, so dass die Syntax sollte gleich sein.

Beantwortet am 05/03/2009 um 00:09
quelle vom benutzer

stimmen
2

Ich verwende die Punkt-Syntax, wenn ich ein Objekt bin absteigend und die Halterung verwenden, um tatsächlich eine Eigenschaft festgelegt.

Wie so:

[self.view setFrame:CGRectMake(0, 0, 320, 480)];

Anstatt von:

[[self view] setFrame:CGRectMake(0, 0, 320, 480)];
Beantwortet am 04/03/2009 um 23:57
quelle vom benutzer

stimmen
1

Ich werde für die alte Art und Weise argumentieren:

Die eckige Klammer Syntax maxes es offensichtlich, dass Sie die Mitglieder eines Objective-C-Objekt zugreifen, während die Punktsyntax zeigt an, dass Sie mit einer C-Struktur (oder Vereinigung) handeln.

Jenseits als das, ist es einfach eine Frage der persönlichen Wahl und mehr / weniger tippen.

Beantwortet am 04/03/2009 um 23:52
quelle vom benutzer

stimmen
0

C ++ und C # Programmierer wahrscheinlich mehr natürlich an den Punktoperator anpassen, wenn Elementvariablen zugreifen, da sie ähnliche Verwendung in dieser Sprache hat.

Beantwortet am 07/03/2009 um 00:51
quelle vom benutzer

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more