Compartir a través de


Elección de un marco de desarrollo móvil

Los desarrolladores pueden usar tecnologías del lado cliente para crear aplicaciones móviles por sí mismas mediante marcos y patrones específicos para un enfoque multiplataforma. En función de sus factores de decisión, los desarrolladores pueden crear:

  • Aplicaciones nativas de una sola plataforma mediante lenguajes como Objective C y Java
  • Aplicaciones multiplataforma mediante Xamarin, .NET y C#
  • Aplicaciones híbridas mediante Cordova y sus variantes

Plataformas nativas

La creación de una aplicación nativa requiere lenguajes de programación, SDK, entornos de desarrollo y otras herramientas específicas de la plataforma que proporcionan los proveedores del sistema operativo.

Ios

Creado y desarrollado por Apple, iOS se usa para compilar aplicaciones en dispositivos Apple, es decir, el iPhone y el iPad.

  • Lenguajes de programación: Objective-C, Swift
  • IDE: Xcode
  • SDK: SDK de iOS

Android

Diseñado por Google y el sistema operativo más popular del mundo, Android se usa para compilar aplicaciones que se pueden ejecutar en una gama de smartphones y tabletas.

  • Lenguaje de programación: Java, Kotlin
  • IDE: Herramientas de desarrollo de Android Studio y Android
  • SDK: Android SDK

Windows

  • Lenguaje de programación: C#
  • IDE: Visual Studio, Visual Studio Code
  • SDK: Windows SDK

Ventajas nativas de la plataforma

  • Buena experiencia de usuario
  • Aplicaciones con capacidad de respuesta con alto rendimiento y la capacidad de interactuar con bibliotecas nativas
  • Aplicaciones altamente seguras

Desventajas de plataforma nativa

  • La aplicación solo se ejecuta en una plataforma
  • Más recursos de desarrollador intensivos y costosos para compilar una aplicación
  • Reutilización de código inferior

Aplicaciones híbridas y multiplataforma

Las aplicaciones multiplataforma proporcionan la capacidad de escribir aplicaciones móviles nativas una vez, compartir código y ejecutarlas en iOS, Android y Windows.

Xamarin

Propiedad de Microsoft, Xamarin se usa para crear aplicaciones móviles sólidas y multiplataforma en C#. Xamarin tiene una biblioteca de clases y un entorno de ejecución que funciona en muchas plataformas, como iOS, Android y Windows. También compila aplicaciones nativas (no interpretadas) que proporcionan un alto rendimiento. Xamarin combina todas las capacidades de las plataformas nativas y agrega una serie de características eficaces propias.

  • Lenguaje de programación: C#
  • IDE: Visual Studio en Windows o Mac

React Native

Publicado por Facebook en 2015, React Native es un marco de JavaScript de código abierto para escribir aplicaciones móviles reales y nativas para iOS y Android. Se basa en React, Facebook biblioteca de JavaScript para compilar interfaces de usuario. En lugar de dirigirse al explorador, tiene como destino plataformas móviles. React Native usa componentes nativos en lugar de componentes web como bloques de creación.

  • Lenguaje de programación: JavaScript
  • IDE: Visual Studio Code

Unidad

Unity es un motor optimizado para crear juegos. Puede usarlo para crear aplicaciones 2D o 3D de alta calidad con C# para plataformas como Windows, iOS, Android y Xbox.

Cordova

Cordova permite compilar aplicaciones híbridas mediante Visual Studio Tools para Apache Cordova o Visual Studio Code con extensiones para Cordova. Con el enfoque híbrido, puede compartir componentes con sitios web y reutilizar aplicaciones basadas en servidor web con enfoques de aplicaciones web hospedadas basadas en Cordova.

Ventajas multiplataforma

  • Mayor facilidad de uso del código mediante la creación de un código base para varias plataformas
  • Atender a un público más amplio en muchas plataformas
  • Reducción drástica del tiempo de desarrollo
  • Fácil de iniciar y actualizar

Desventajas multiplataforma

  • Menor rendimiento
  • Falta de flexibilidad
  • Cada plataforma tiene un conjunto único de características y funcionalidades para que la aplicación nativa sea más creativa
  • Mayor tiempo de diseño de la interfaz de usuario
  • Limitación de herramientas