Guía fácil para empezar a crear Apps iOS, tan fácil que un programador Android entenderá

crear-Apps-iOS

crear-Apps-iOS

Sé que alguna vez has pensado crear Apps iOS.

¿Cómo se hará esto? ¿Qué necesitaré para subir mi aplicación al App Store?

Pero buscas tutoriales en la red, y todos parece un lío.

Que si un tutorial mal explicado por allí, otro por allá, un «Hola Mundo», y tú dices adiós.

Pero tranquilo, yo también tuve las mismas dudas que tú,  sé como ayudarte.

Lo primero es querer, y lo segundo es aprender con un programa guiado, un curso que vaya desde lo más básico hasta cosas un poco avanzadas, y después puedas «volar solo».

Es muy importante contar con un experto que resuelva tus dudas, que te guíe en tu aprendizaje y te ayude con aquellos problemas que no sepas resolver solo.

¿Tienes Mac?

Esta es la pregunta clave, pues para dedicarte a esto de forma profesional, necesitas un Mac.

Da igual cual sea, el más barato o el más caro, nuevo o de ocasión, pero necesitas un Mac que cargue al menos el sistema operativo OS X en su versión 10.8, o lo que es lo mismo: Mountain Lion.

¿Tienes iPhone o iPad?

Otra de las cosas que necesitarás si o si para ver tu aplicación en la tienda de Apps que más ingresos genera, es un dispositivo iOS.

Un dispositivo iOS es el iPhone, el iPad, y también el iPod Touch.

¿Gasto o inversión?

Realmente cuándo adquirí mi primer iPhone fue un gasto.

Cuándo adquirí mi primer Mac, un Macbook Pro de 13 pulgadas allá por el año 2009, fue una inversión.

Tienes que ver la adquisición de un Mac y un dispositivo iOS como una inversión.

Quizá tú puedas crear el próximo pelotazo del App Store.

Lo anterior tiene que ver con el hardware, o lo que es lo mismo, las maquinitas que usaremos de forma física.

¿Y qué hay del software?

Esto es más sencillo, sólo necesitamos un programita llamado Xcode.

Xcode lo podemos descargar de forma gratuita del App Store ¿gratis? Sí así es.

¿Y ya está?

Sí, es todo lo que necesitamos.

¿Ya?

¡Ah! Vale, que tú eres el desarrollador de Android que quiere algo más.

O quizá estás empezando en el mundo de las Apps y no sabes que esto es todo lo que necesitas 😉

Pues esto es todo.

No hay que estar montando entorno de desarrollo, o «tirando» con emuladores que no funcionan o lo hace de forma desastrosa ( ¡Hola Android Studio! )

Tampoco descargándote Eclipse de un lado, otro software de otro, crear entornos de desarrollo, y cruzar los dedos para que todo funcione.

Desgranando lo necesario

Bien, imaginemos que ya tenemos nuestro Mac con Xcode instalado, también tenemos nuestro iPhone de ocasión.

Verás, crear Apps iOS comprende ciertos aprendizajes.

Crear una App iOS no es sólo programar.

Para crear App iOS necesitamos las siguientes competencias:

  • Aprender Objective-C o Swift
  • Conocer el entorno Cocoa
  • Dominar Xcode
  • Saber aplicar Auto Layout y Size Classes

Aprender Objective-C o Swift

Debemos aprender uno de estos lenguajes de programación.

Yo a día de hoy no me atrevo cual recomendarte, en entornos profesionales Objective-C es el rey.

Objective-C es un lenguaje estable, asentado, seguro, con muchos años de experiencia.

En las empresas todavía no saben que es Swift.

Swift es un gran parque de atracciones pero que todavía no está abierto al publico.

Es de suponer que será una herramienta maravillosa, y los desarrolladores nos divertiremos mucho con el, sobre todo porque se escribe mucho menos código que con Objective-C.

Entonces, si quieres aprender para buscar un trabajo como developer en alguna empresa, aprende Objective-C sin descuidar Swift, si quieres crear aplicaciones por hobby, o de una forma freelance, entonces aprende Swift… sin descuidar Objective-C 😉

Conocer el entorno Cocoa

No basta con conocer o ser un experto en alguno de los lenguajes mencionados.

Ni siquiera basta con ser un experto en los dos.

Objective-C y Swift funcionan en perfecta sincronia con los diferentes Frameworks y Clases de Cocoa y Cocoa Touch.

Para entender esto hay que meter las manos en harina, hay que ponerse a crear.

Pero me basta con que entiendas, que usaremos Objective-C y Swift para trabajar con los diferentes Objetos que existen en Cocoa, o para crearlos.

Dominar Xcode

El IDE ( Integrated Development Environment) o lo que es lo mismo: Entorno de Desarrollo Integrado que usaremos será Xcode.

Desde esta herramienta programaremos la lógica de nuestra aplicación y también crearemos su interfaz.

Desde hace un par de años vengo diciendo que dominar esta herramienta en profundidad será más importante que saber programar.

No en vano, Apple con cada nueva versión incluye herramientas que antes no existían.

Lo que quiero decir es que cada vez más, podemos hacer haciendo clic sobre un botón de Xcode, lo que antes nos supondría escribir unas cuantas lineas de código.

Saber aplicar Auto Layout y Size Classes

Ahora un desarrollador iOS tiene que contemplar diferentes tamaños de pantalla.

¿Estoy viendo una ligera sonrisilla en la cara de los desarrolladores de Android?

Debemos contemplar los diferentes tamaños de pantalla:

  • iPhone 4 –> 3.5″
  • iPhone 5 –> 4″
  • iPhone 6 –> 4,7″
  • iPhone 6 Plus –> 5,5″
  • iPad Mini –> 6,9″
  • iPad –> 9,6″

Y claro, todos los elementos que compongan las vistas de nuestra App, deberán verse perfectamente desde cada uno de estos dispositivos.

Para este objetivo existen las Auto Layout y las Size Classes.

Auto Layout

Se trata de una tecnología que nos permite «anclar» o poner restricciones a cada uno de los elementos de nuestra vista, de forma que los diferentes objetos permanecen inmutables o varían en cierta medida, dependiendo del dispositivo que ejecute nuestra App.

Size Classes

Esta tecnología llegó con iOS 8 y los nuevos iPhones.

Basicamente consiste en que las vistas de tu aplicación, se adaptan al dispositivo que las ejecuta, va un paso más allá de las Auto Layout.

Preguntas importantes resueltas

Y ahora veamos las 2 preguntas frecuentes que más contesto:

¿Es necesario saber programar para aprender a crear Apps?

En absoluto.

Si sabes programar, genial, de otra forma, encuentra una formación que te enseñe desde cero, es decir que claramente indique que no es necesario tener conocimientos previos de programación.

En mis Cursos no es necesario tener conocimientos, empezamos desde cero, como has podido comprobar en este mini training.

¿Se gana dinero vendiendo Apps?

Rotundamente SÍ.

No conozco a nadie que haya empezado a crear Apps en serio que no haya ganado dinero, no es una utopia.

Pero tengo que decirte que no es fácil, esto no es un negocio que el dinero caiga del cielo así porque sí.

Es necesario crear muchas aplicaciones, aprender técnicas para monetizar tus Apps.

No es dinero fácil, es dinero posible, si tienes un mínimo conocimiento, y no estoy hablando de programar únicamente.

Y ahora sí, amigo desarrollador Android o iOS Developer en fase beta, esto es todo.

Creo haber dejado las cosas bastante claras, espero haber resuelto todas tus dudas, si no fuera así, déjame un comentario o envíame un email 😉

About The Author
iOS Developer & Instructor at CFE Apps. Enseño a crear aplicaciones iOS a todo el que quiera aprender.

2 Comments

  • Marques 20/01/2015 @ 16:16

    Quiero decir que yo he hecho ya 5 cursos con Sergio y sin problema es un profesor increible nada que envidiar a otros… es mas los otros le envidian a el. Me inicio con Objective-C pasando por todos los niveles hasta crear mi app, y despues Swift Pedazo de curso OLEEEE, la verdad que es un fiera!!! OS LO RECOMIENDO 100 % Animo chicos

    • Sergio Becerril 20/01/2015 @ 17:40

      Hola Marques,

      Muchas gracias por comentar.

      La verdad es que siempre digo lo mismo, el mérito es todo tuyo, o todo vuestro, lo que quiero decir es que yo soy uno más, a mis alumnos lo primero que les digo: «Por favor, a mi no me llaméis MAESTRO» todo lo que has conseguido es por tu esfuerzo 😉

      Un abrazo.
      Sergio Becerril

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.