Entendiendo el ecosistema iOS

Antes de comenzar a crear aplicaciones iOS, es crucial que primero comprenda el ecosistema. Este artículo examinará los fundamentos del sistema operativo iOS, los diversos dispositivos iOS disponibles y el App Store de Apple..


¿Por qué iOS??

Antes de la llegada de Android y Windows Phone, Apple era el jugador dominante en el espacio móvil, rivalizado solo por Nokia y BlackBerry. Con la aparición de nuevas plataformas móviles, se ha vuelto cada vez más importante preguntarse qué plataforma es la más adecuada para usted. A pesar de la ventaja inicial de Apple en 2007, Android ha superado a iOS en participación de mercado. ¿Qué significa eso para iOS? ¿Sigue siendo una plataforma por la que vale la pena desarrollar? Seguro que lo es. Hay muchas buenas razones para comenzar con el desarrollo de iOS.

  • Fuertes incentivos financieros: La gente gasta más dinero en la App Store de Apple que en cualquier otra plataforma móvil. A pesar de que Android se ha convertido en el jugador dominante en el espacio móvil, la plataforma iOS sigue siendo más lucrativa para los desarrolladores..
  • Jardín amurallado: Aunque la App Store de Apple ha recibido muchas críticas de desarrolladores y clientes, especialmente el proceso de revisión de Apple, es evidente que esta política ha llevado a una App Store en la que la calidad de la aplicación promedio es mayor que en cualquier otra tienda móvil. Los clientes también tienden a sentirse mucho más seguros cuando compran aplicaciones de la App Store que en otras más. abierto plataformas, como Google Play.
  • Comunidad y Apoyo: La comunidad de desarrolladores de iOS es una gran comunidad para ser parte de. Hay una cantidad casi ilimitada de artículos, tutoriales y documentación para ayudarlo cuando se encuentra con un problema. Además, la documentación de Apple sobre el SDK de iOS es excelente, sin mencionar los cientos de videos WWDC (World Wide Developer Conference) disponibles para todos los desarrolladores de iOS registrados..

La gente a menudo olvida o no sabe que Android y iOS son plataformas muy diferentes. A pesar de que ambas plataformas fueron diseñadas para el espacio móvil, el ecosistema de iOS difiere en muchos aspectos del ecosistema de Android de Google. Desde la perspectiva del desarrollo, a la mayoría de las personas parece que les resulta más fácil desarrollar para la plataforma iOS que para la plataforma Android. No me malinterprete, no me refiero a la pila de tecnología que utiliza cada plataforma ni a las herramientas disponibles para cada plataforma. Dos razones están en la base del abismo entre iOS y Android, fragmentación y índice de adopción.

Fragmentación

Una de las fortalezas principales de Android es al mismo tiempo una de sus principales debilidades. Como la mayoría de ustedes sabe, el sistema operativo Android se lanza como un proyecto de código abierto y, por lo tanto, se puede usar y modificar. Numerosos fabricantes de hardware vieron el potencial de Android, especialmente porque estaba respaldado por Google. Android ganó rápidamente en popularidad como resultado. El problema es que cada fabricante de hardware ha modificado Android para satisfacer sus necesidades y ha surgido una gran variedad de factores de forma desde la introducción de Android..

A pesar de que la cuota de mercado de Android puede parecer una gran olla de miel, es un dolor crear un software que se ejecute en cada versión de Android actualmente disponible. Debido a los miles de dispositivos diferentes que ejecutan Android, la prueba de software en hardware tampoco es una tarea trivial. Como puedes imaginar, el soporte y la compatibilidad se convierten en un verdadero desafío..

Índice de adopción

Tradicionalmente, en muchos países, el mercado inalámbrico está bajo un estricto control por parte de los operadores de telefonía celular. Desde el principio, Apple supo que necesitaba tener el control de sus dispositivos móviles para proporcionar la mejor experiencia de usuario posible. El resultado es que los clientes pueden actualizar sus dispositivos iOS a la última versión de iOS el mismo día en que se lanzan al público. Esta es una gran ventaja de la plataforma iOS y su resultado es sustancial. Menos de tres meses después del lanzamiento de iOS 7, más del 74% de los dispositivos iOS se habían actualizado a iOS 7.

Vamos a comparar esto con Android. En diciembre de 2013, menos del 55% de los usuarios de Android habían actualizado sus dispositivos a Jelly Bean (lanzado en julio de 2012) y el 1.1% había actualizado a KitKat (lanzado en octubre de 2013).

La razón para que aparezcan estos números no es minimizar la plataforma Android ni ninguna otra plataforma móvil. Lo que quiero enfatizar es el impacto que tiene la tasa de adopción en el ecosistema de aplicaciones de estas plataformas. Los usuarios más lentos adoptan una nueva versión de un sistema operativo, los desarrolladores más largos se ven obligados a admitir versiones anteriores del sistema operativo y se vuelve menos atractivo adoptar nuevas tecnologías, que solo pueden usarse en una fracción de los dispositivos Android.

Monetización

A pesar de que Android se está poniendo al día, iOS sigue siendo, con mucho, la mejor plataforma en términos de monetización. Durante el evento más reciente de Apple, Tim Cook anunció que los clientes habían descargado más de 60 mil millones de aplicaciones y que Apple había pagado más de $ 13 mil millones a los desarrolladores de iOS. En septiembre de 2013, durante el evento anual de iPhone de Apple, Tim Cook anunció que la compañía había vendido más de 700 millones de dispositivos iOS. Si está pensando en desarrollar para una plataforma móvil, entonces iOS es una excelente opción y es poco probable que el incentivo financiero para hacerlo cambie pronto..


Por que nativo?

Si usted es un lector frecuente de Envato Tuts +, es posible que haya oído hablar de marcos multiplataforma como PhoneGap o Titanium Mobile. Quizás se esté preguntando por qué debería pasar por la dificultad de aprender Objective-C cuando puede crear aplicaciones de iOS utilizando JavaScript. Permítame darle un breve resumen de sus opciones si decide desarrollar aplicaciones iOS.

  • Aplicaciones web: Una aplicación web es su primera opción y, de hecho, esta fue la única opción antes de la introducción del SDK nativo de iOS en 2008. La ventaja de las aplicaciones web es que no tienen que lidiar con la App Store o el proceso de revisión de Apple. ¿Porqué es eso? Una aplicación web es un nombre elegante para un sitio web que actúa y se comporta como una aplicación. Todo lo que necesita es un navegador, como Mobile Safari o Google Chrome.
    Las aplicaciones web tienen claras ventajas. Por defecto, son multiplataforma ya que la aplicación se ejecuta en un navegador. Otra ventaja es la curva de aprendizaje para crear aplicaciones web. Si está familiarizado con el desarrollo web, estará listo y funcionando en poco tiempo..
    Por supuesto, las desventajas de las aplicaciones web tampoco pueden ser ignoradas. Una aplicación web tiene acceso limitado a las capacidades de los dispositivos en los que se ejecutan. Las aplicaciones web móviles son bastante potentes gracias a HTML5 y JavaScript. Sin embargo, existen distintas restricciones en cuanto a lo que pueden hacer. No podrás usar todas las funciones geniales del iPad y el iPhone. Además, las aplicaciones web normalmente requieren una conexión de red para funcionar, aunque hay excepciones a esta regla. Sin embargo, quizás el mayor inconveniente de la creación exclusiva de aplicaciones web es que, en general, se sentirán significativamente más lentos que las aplicaciones nativas. La capacidad de respuesta de las aplicaciones web mejora constantemente, pero el retraso heredado agregado por el navegador no debe pasarse por alto ni ignorarse..
  • Frameworks móviles multiplataforma: La promesa de un marco multiplataforma es que los desarrolladores pueden escribir una aplicación que se pueda implementar en múltiples dispositivos móviles desde una única base de código. Esto se logra con una serie de enfoques diferentes. Algunos marcos, como PhoneGap, utilizan el SDK nativo de la plataforma para crear una vista web en la que está incrustada la aplicación. Al igual que con las aplicaciones web, esto impone limitaciones en términos de funcionalidad. La principal ventaja es que la aplicación se siente como una aplicación nativa en términos de experiencia de usuario y que se puede distribuir a través de la tienda de la plataforma..
    Si bien los marcos de desarrollo móvil pueden parecer el santo grial para el desarrollo móvil, hay una serie de desventajas que deben considerarse. El inconveniente más importante es que su aplicación depende de un marco de terceros. En otras palabras, toda la base de código se vuelve dependiente de la compañía que proporciona la solución multiplataforma. Si esa empresa se rompe o se demora en implementar los cambios realizados en el SDK nativo, podría verse obligado a volver a empezar desde cero. Ese es un riesgo que no debe ser ignorado..
  • iOS SDK: Elegir desarrollar con el SDK nativo es la mejor opción si desea crear aplicaciones que se destaquen y aprovechen al máximo las capacidades del dispositivo. Optar por una aplicación nativa también significa que trabajará en un entorno de desarrollo sólido y que puede confiar en las herramientas de desarrollo, las utilidades y el soporte de Apple..

ecosistema iOS

Uno de los aspectos más atractivos del ecosistema iOS es su simplicidad. La lista de dispositivos capaces de ejecutar iOS es sorprendentemente corta en comparación con Android o Windows Phone. Esto significa que probar aplicaciones iOS es mucho menos engorroso en comparación con otras plataformas.

Como se dijo anteriormente, Android ha superado a iOS en términos de participación de mercado, pero esto es solo una parte de la historia. La plataforma iOS representa más del 50% del uso de la web en dispositivos móviles. ¿Qué nos dice esto sobre el espacio móvil? Nos dice que iOS sigue siendo el sistema operativo más utilizado en el espacio móvil, al menos en línea, y esto a pesar de la mayor participación de mercado de Android.

Dispositivos

Hay esencialmente dos familias de dispositivos dentro del ecosistema iOS: la familia de dispositivos iPhone, que también incluye el iPod Touch y la familia de dispositivos iPad. Para una descripción completa, le recomiendo que eche un vistazo a esta lista.

Las principales diferencias en la familia de dispositivos iPhone son las capacidades de hardware y el tamaño de la pantalla. El iPhone 5, 5S, 5C y el iPod Touch de quinta generación tienen una pantalla más grande de 4 ", mientras que los modelos anteriores vienen con la pantalla más familiar de 3.5". La diferencia en el tamaño de la pantalla afecta el desarrollo, pero no agrega mucha sobrecarga para la mayoría de las aplicaciones. Hablaré más sobre esto en el curso de la serie..

En 2012, la familia iPad se amplió con la introducción del iPad Mini. A pesar de que la introducción del iPad Mini causó una ola en la industria de la tecnología, tiene poco impacto para los desarrolladores de iOS. La pantalla del iPad Mini es significativamente más pequeña que la del iPad de 10 "y del iPad Air, pero la resolución es idéntica a la resolución de los iPad de 10". Debido a la pantalla más pequeña del iPad Mini, el tamaño promedio de los objetivos táctiles es más pequeño y esto podría representar un problema para algunas aplicaciones existentes.

iOS

Apple lanza tradicionalmente una nueva versión de su sistema operativo móvil cada año. Hasta la fecha, Apple ha lanzado siete versiones principales de su sistema operativo móvil, siendo la versión más reciente iOS 7. El soporte de dispositivos es un aspecto de iOS que la gente suele pasar por alto. Tomemos el iPhone 4, por ejemplo. El iPhone 4 se lanzó en 2010 y aún es capaz de ejecutar iOS 7. No existe una plataforma móvil que se aproxime a esto en términos de compatibilidad con dispositivos.

Tienda de aplicaciones

Una de las razones clave para desarrollar para la plataforma iOS es el increíble éxito de la App Store. La venta de software nunca ha sido tan fácil gracias a la App Store y la Mac App Store. Apple anunció recientemente que la App Store ha superado el hito de 1 millón de aplicaciones. Se está llenando un poco en la App Store, pero tenga en cuenta que la cantidad de dispositivos iOS también continúa creciendo de manera exponencial.

El espacio móvil aún está en su infancia y todavía hay mucho potencial que está esperando ser descubierto. Al igual que en la web a finales de los noventa, el espacio móvil seguirá creciendo a un ritmo acelerado y la cantidad de dinero que se puede ganar aumenta con cada nuevo teléfono inteligente o tableta que se vende..


Conclusión

Ahora tiene una imagen clara del ecosistema de iOS y espero poder convencerlo de que comience con el desarrollo de iOS. En la próxima publicación, le mostraré cómo comenzar con el SDK nativo configurando el entorno de desarrollo. Te sorprenderá lo fácil que es esto..

Recursos Extra

Si es nuevo en el desarrollo de iOS o en el desarrollo de dispositivos móviles en general, es posible que le interese visitar nuestra página de Desarrollo de aplicaciones en Envato Studio.