| Artículos | 11 ENE 2009

Curso de programación de aplicaciones para el iPhone (y II)

PCWORLD PROFESIONAL

Continuamos nuestro curso sobre el desarrollo de aplicaciones para el dispositivo de Apple, con el que terminaremos de programar un puzzle de 3x3.



Objective-C. Un lenguaje orientado a objetos “diferente”

Objective-C es el lenguaje nativo para programar aplicaciones tanto para Mac OS X como para iPhone. Es una extensión más de ANSI C, y como casi cualquier otro lenguaje orientado a objetos (OO), tiene clases, métodos, propiedades, encapsulación, herencia, polimorfismo... Otros lenguajes con soporte de orientados a objetos, como Java, C++, C#, o PHP, tienen una sintaxis parecida entre ellos, de modo que un programador de cualquiera de esos lenguajes puede leer y entender con relativa facilidad un código escrito en otro. Sin embargo Objective-C, basado en la sintaxis de Smaltalk, tiene poco que ver con ellos.

Para que esto no suponga un gran obstáculo, vamos a intentar enumerar unos cuantos consejos y equivalencias que facilitarán las cosas al lector relacionado con otros lenguajes OO. Al menos cubriremos todas las cosas “nuevas” que utilizaremos para desarrollar la aplicación de ejemplo.



Clases

Al igual que en C++, normalmente las clases en Objective-C se separan en dos ficheros, un .h y un .m. El .h contendrá la declaración de la clase y el .m contendrá la implementación.

Para los programadores de Java, la palabra clave interface puede resultar engañosa. @interface en Objective-C es una palabra reservada para la declaración de una clase. El equivalente a las interfaces de Java en Objective-C son los protocols.

La herencia se representa con el símbolo “:” Así, si la clase A extiende a la clase B, la sintaxis en Objective-C sería @interface A : B

Las declaraciones de las clases incluyen los variables miembros de esa clase y los prototipos de los métodos que serán implementados. 

simulador aplicación iPhoneLa diferencia principal con los otros lenguajes citados viene a la hora de declarar y usar los métodos. La sintaxis permite leer de una forma natural qué es lo que el método hace, de forma que el método esta identificado no sólo por un nombre como en otros lenguajes, sino por una serie de palabras clave que forman una frase descriptiva de la acción que realiza el método. Supongamos un método que desliza una imagen hasta un punto. Su declaración sería:



- (void)slideImage:(UIView *)image to:(UITouch *)touch;



donde UIView/UITouch son tipos de datos que veremos más adelante, en el ejemplo.

Cuidado con el signo – en la declaración. Este podría ser un signo – o un signo +, y es otra de las cosas que más confusión pueden causar, sobre todo si estamos familiarizados con UML. En este caso, los signos no tienen nada que ver con la visibilidad de los métodos (public, protected, private), sino que indican si estos son referentes a la clase o a la instancia del objeto creado. La equivalencia de un signo + es un método static en Java o C++.

La implementación de una clase en Objective-C se identifica con la palabra clave @implementation seguida del nombre de la clase, que debe coincidir con el de la declaración.



Llamadas a métodos

Para llamar a métodos en Objective-C se envían “mensajes” al objeto correspondiente. El mensaje esta formado por las palabras clave que identifican el método y por los parámetros que recibe. Los mensajes se encierran entre corchetes “[]”, donde lo primero que aparece a la izquierda es el objeto que recibe el mensaje, seguido del mensaje en sí y los parámetros que este requiera. Por ejemplo, insertar un objeto X en la posición Y del array miArray tendría la siguiente sintaxis:



[miArray insertObject:X atIndex:Y];



Esta sintaxis permite anidar corchetes para evitar crear variables locales si los objetos que reciben los mensajes o los parámetros a utilizar provienen de llamadas a otros métodos.



Si quiere seguir leyendo acerca de las propiedades, arrays, creación de la interfaz gráfica, acceder a ella desde el código Objective-C, la interacción con la pantalla táctil, animaciones, configuración inicializada y cómo probar la aplicación, puede leerlo en el número 260 de PC World disponible en Zinio.

Contenidos recomendados...

Comentar
Para comentar, es necesario iniciar sesión
Se muestran 0 comentarios
X

Uso de cookies

Esta web utiliza cookies técnicas, de personalización y análisis, propias y de terceros, para facilitarle la navegación de forma anónima y analizar estadísticas del uso de la web. Consideramos que si continúa navegando, acepta su uso. Obtener más información