Este fin de semana he dedicado unas horas a introducirme en el desarrollo de aplicaciones para iOS. Ya había hecho algún intento, pero no me había puesto a ello porque tanto en el trabajo como en casa tengo (tenía) Mac OS X Leopard y las versiones del SDK que se pueden descargar de la web Apple solo son válidas para Lion o Snow Leopard. Buscando por internet pude encontrar en el blog Drop the Nerd el enlace al SDK de iOS para Leopard, en la misma web de Apple. A continuación me bajé algún ejemplo ya hecho y descubrí que necesita firmar de alguna forma las aplicaciones para poderlas probar en un iPhone (aunque de todas formas aún no tengo ninguno). Por suerte hay formas de crearse uno mismo una firma digital para ello.
Con todo listo, me puse a buscar cursos que me permitieran aprender tanto Objetive-C como a desarrollar para iOS, que no son la misma cosa. Una de las páginas que más útil me ha resultado es esta en la que se enseña rápidamente las características de Objetive-C comparándolas con las equivalentes en otros lenguajes orientados a objetos como C++ o Java. Tras leer ese breve tutorial ya podía ir entendiendo código escrito por otros en Objetive-C. Tras leer lo que ya considera suficiente sobre Objetive-C decidí ponerme manos a la obra (lo que más nos gusta a los programadores) y busque un curso que ensañará paso a paso a programar un juego para iOS (en el fondo lo que queremos todos es hacernos ricos con el nuevo Angry Birds). He encontrado un curso muy básico pero que cubre la mayoría de los puntos más básicos del desarrollo un juego (bucle del juego, detección simple de colisiones, IA, pantalla inicial y sonido). Hay que tener un poco de paciencia con el curso porque se ve que tras un traslado o migración ha perdido la maquetación y algunos enlaces, pero es bastante productivo:
- iPhone Game Programming Tutorial Part 1 – iPhone Programming.
- iPhone Game Programming Tutorial Part 2 – User Interaction, Simple AI, Game Logic
- iPhone Game Programming Tutorial Part 3 – Splash Screen
- iPhone Game Programming Tutorial Part 4 – Basic Game Audio
Y he aquí mi criatura: