Si quieres crear una aplicación móvil lo primero que debes saber es si la quieres desarrollar para iOS o para Android. Seguramente en un futuro querrás tenerla en ambas plataformas, pero la primera decisión que hay que tomar es con qué plataforma lo harás primero y para decidirte deberás tener en cuenta los siguientes factores: usuarios, la línea temporal, las características deseadas, el presupuesto de manutención de la aplicación y los objetivos de ingreso. 

desarrollar aplicaciones moviles en Android o iOS

Se termina tomando la decisión de trabajar con uno o con otro porque, aunque aparentemente no lo parezca, hay diferencias de programación, de diseño y estrategia entre ambos sistemas operativos. Aún así son diferencias que se pueden resolver, excepto el background o algunas características de las notificaciones. Pero la estructura de desarrollo suele ser parecida, depende más del lenguaje que de la plataforma.

Ahora veremos algunos de los principales aspectos en los que se diferencian:  

Lenguaje y tecnología

Ambas plataformas utilizan lenguajes de programación distintos. 

Actualmente para iOS, podemos usar tanto Swift, el nuevo lenguaje de desarrollo que Apple está promocionando desde 2014 u Objective-C, el clásico usado hasta la fecha para todos los desarrollos en plataformas Apple. Mientras que Objective-C es más parecido a C, con gestión manual de la memoria y mucha potencia, Swift se asemeja más a los lenguajes modernos como Java o C#, con gestión de memoria automática. Además, en el caso de Apple para desarrollar necesitaremos disponer de un ordenador Mac, ya que XCode, la herramienta de desarrollo utilizada para crear aplicaciones, solo funciona en sistema operativo macOS.

En el caso de Android, tradicionalmente se ha usado Java, un lenguaje muy extendido en el desarrollo empresarial y de back office, aunque en los últimos tiempos se está dando un gran empujón a un nuevo lenguaje, Kotlin, desarrollado por JetBrains, con una nueva semántica y diseñado para escribir código de calidad industrial. Para Android podremos desarrollar desde cualquier PC con Windows, Linux o desde un Mac, usando diferentes entornos. El más popular hoy en día es el propio Android Studio de Google.

Diseño

También nos encontramos con características visuales diferentes que van de la mano del desarrollo de la aplicación.  

Android está disponible con distintos fabricantes, no solo con Google, por lo que tiene múltiples productores; sin embargo, Apple solo tiene uno, él mismo, por lo tanto, tiene un absoluto control de sus dispositivos y de su software. Android resulta más complicado por la variedad de dispositivos móviles que tiene y por lo tanto diferentes resoluciones de pantalla, al contrario que Apple que solo tiene Tablet y IPhone.  

La interfaz del usuario y por lo tanto su experiencia y usabilidad cambia en función del sistema operativo que utilicemos. La simplicidad, compactibilidad y el minimalismo son las tres cosas más importantes para el diseño de las apps.

Aunque ahora son más similares que antes, vemos cómo hay diferencias entre los iconos, botones, paneles y ventanas multitarea, etc.

Testeo

Esta es una de las principales tareas a tener en cuenta, es necesario comprobar que la aplicación funcione y para ello utilizan cada uno una herramienta: el emulador de Android y el simulador de iOS. El primero es más preciso y realista y el segundo es más rápido.

Además, al tener dos bases de código totalmente desconectadas y diferentes, deberemos realizar pruebas automatizadas y manuales por duplicado de cada funcionalidad que implementemos.

Market Place

Cada plataforma cuenta con su propia tienda de distribución de aplicaciones, con procedimientos, costes y burocracia bien diferenciada.

Históricamente Apple ha sido el más estricto a la hora de aceptar publicar las aplicaciones. Además, para poder publicar y mantener nuestra aplicación en la tienda de Apple necesitaremos pagar la licencia de desarrollador anualmente, con un importe de 99€ en el caso de una licencia standard o 300€ en el caso de una licencia empresarial. También necesitaremos un ordenador Mac con macOS para poder compilar y subir el binario a la tienda para su revisión y certificación.

En el caso de Android, tradicionalmente ha sido más laxo que Apple al aprobar aplicaciones en la tienda, aunque desde el 1 de enero de 2020 ha incorporado la misma política de revisión manual que Apple, con lo que nuestras aplicaciones pueden tardar hasta una semana en publicarse, si no son rechazadas. Al contrario que Apple, no necesitamos un software o hardware específico para subir nuestro binario a la tienda, pudiendo realizar todo el proceso desde la web de Google Play Developer Console. 

Coste de desarrollo

Realmente no es muy destacable porque hay una ligera diferencia de precio, teniendo iOS un coste mayor que Android, independientemente de su rentabilidad.

Aunque exista una rivalidad muy grande entre ambas plataformas encontramos las mismas oportunidades de aprendizaje y monetización. Habrá que elegir utilizar una u otra en función de las necesidades a largo plazo y de los factores comentados al principio del post.  

¿Y por qué no ambas?

En DevsDNA utilizamos una tecnología de desarrollo llamada Xamarin que nos permite unificar las diferencias expuestas en este documento, usando un lenguaje común de desarrollo, C#, creando una identidad de marca visual común en ambas plataformas, aun respetando las características de cada una de ellas, y unificando esfuerzos, lo que nos permite agilizar y simplificar el testing de las aplicaciones.

Lamentablemente, seguimos teniendo que pasar por los procesos de certificación y publicación de Apple y Google, pero tras más de 30 aplicaciones publicadas con éxito, conocemos todos los mecanismos para llevar a buen puerto una publicación en el menor tiempo posible.

Además, al unificar código, pruebas y elementos visuales, podemos ofrecer  el desarrollo de ambas plataformas por tan solo un poco más de lo que costaría desarrollar una de ellas de forma nativa clásica.

Contacta con nosotros y déjanos enseñarte nuestro trabajo, y cómo tu empresa puede beneficiarse de nuestra gran experiencia y conocimiento.

Leave a Reply