Operador de punto en Objective-C 2.0

votos
3

Simplemente recogiendo Objective-C 2.0 y quería saber si hay alguna ventaja al usar el operador de puntos para acceder a las propiedades en lugar de a la vieja manera. Breve ejemplo de lo que quiero decir.

vieja forma:

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

nueva manera:

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

¡Gracias!

Rodrigo

Publicado el 04/03/2009 a las 23:41
fuente por usuario
En otros idiomas...                            


5 respuestas

votos
7

La única diferencia es la facilidad de tipeo y legibilidad. La opinión de que es más legible difiere de persona a persona :)

Respondida el 04/03/2009 a las 23:44
fuente por usuario

votos
2

De hecho, me gusta la nueva sintaxis, pero tal vez porque trabajo como programador de Python.

La sintaxis de propiedad de punto se combina muy bien con las rutas clave en KVC / KVO. Se ve mejor para mí que los paréntesis anidados (¡y me gusta el esquema, así que no me opongo a la anidación de paréntesis!), Y lo hace explícito cuando accedes a una propiedad, en lugar de pasar un mensaje, aunque el mecanismo es mismo.

Y, veo que el acceso a la propiedad de un objeto es (básicamente) la misma operación que acceder a los miembros de una estructura o unión, por lo que la sintaxis debería ser la misma.

Respondida el 05/03/2009 a las 00:09
fuente por usuario

votos
2

Utilizo la sintaxis de punto cuando estoy descendiendo un objeto y uso el corchete para establecer realmente una propiedad.

Al igual que:

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

En lugar de:

[[self view] setFrame:CGRectMake(0, 0, 320, 480)];
Respondida el 04/03/2009 a las 23:57
fuente por usuario

votos
1

Argüiré por la vieja manera:

La sintaxis del paréntesis cuadrado maximiza obvio que está accediendo a los miembros de un objeto Objective-C, mientras que la sintaxis del punto indica que está tratando con una estructura C (o unión).

Más allá de eso, es simplemente una cuestión de elección personal y más / menos tipeo.

Respondida el 04/03/2009 a las 23:52
fuente por usuario

votos
0

Los programadores de C ++ y C # probablemente se adaptarán más naturalmente al operador de punto cuando accedan a las variables miembro, ya que tiene un uso similar en esos idiomas.

Respondida el 07/03/2009 a las 00:51
fuente por usuario

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