Este tutorial es una continuación de cómo programar para el iPhone.
Cuando un cliente nos pida desarrollar una aplicación para el iPhone, debemos tener en cuenta los requerimientos y saber enfocar la herramienta a utilizar, ya que nosotros podemos desarrollar una aplicación web o una aplicación nativa, obviamente con resultados distintos no sólo por la aplicación en si, sino por tiempo y esfuerzo.

Se trata de las aplicaciones normales desarrolladas en HTML + CSS + JavaScript, que corren del lado del servidor y son vistas en el navegador Safari. Dichas aplicaciones pueden ser desarrolladas en PHP, NET, Java, etc y generar el código HTML necesario para poder ver nuestra aplicación corriendo en el Iphone. Con CSS ya podemos darle el toque final para que sea muy similar a una aplicación de escritorio (si se desea).
Los usuarios de iphone ya vienen acostumbrados a este tipo de aplicaciones, en realidad son todas aquellas que fueron descargadas desde AppStore y fueron instaladas directamente en el dispositivo, a ello se le suma que no es necesario tener una conexión a internet ya que estas no corren en el navegador. Estas aplicaciones son desarrolladas con el SDK de Iphone: xCode en Objective C.
Para explicar esto, nos apoyaremos en una imagen que proporciona apple.

Empezamos diciendo que aprendiendo Cocoa Touch ya puedes crear aplicaciones no solo para el iphone o ipod, sino para toda la familia Mac OS. Ya que estos dispositivos trabajan con una copia similar a la que usan las mac.
Los 4 elementos que ves, son todas las capas con la que trabaja iphone o ipod, empezaremos explicando de abajo hacia arriba:
Como ya mencionamos, Cocoa Touch es el API para el desarrollo de aplicaciones orientado a objetos. Esta incluse a su vez 3 frameworks que usaremos para poder trabajar con el iphone:
Es un lenguaje de programación basado en C, y que ha sido modificado para poder trabajar orientado a objetos, con lo cual puedes crear clases, objetos, variables de instancias, métodos, encapsulación, etc.
Es importante remarcar, que Objective C no es Java, PHP, NET, ActionScript, etc,es totalmente distinto, y necesitaras esforzarte para aprender a programar si estás acostumbrado a estos lenguajes. Sin embargo, si alguna vez desarrollaste en C o C++, tendrás muchas más ventajas para entenderlo. Aquí en cristalab, intentaremos en los siguientes tutoriales explicarte de una forma fácil y sencilla su uso.
Si tienes alguna pregunta de este tutorial; puedes hacerla aqui en los foros