Desarrollo de aplicaciones móviles multiplataforma en 2020

¡Hola a todos!

Soy Sergey Yakimov, CTO Omega-R, una compañía internacional que desarrolla e integra soluciones de TI. Basado en muchos años de experiencia en el campo de la tecnología de la información y la experiencia de la compañía, quiero compartir mi visión del presente y el futuro cercano del desarrollo de aplicaciones móviles multiplataforma.

imagen

Con los años, el desarrollo móvil multiplataforma se ha ganado una reputación como una de las áreas más populares de desarrollo de software. El enfoque multiplataforma le permite crear aplicaciones para varias plataformas con una base de código, lo que ahorra tiempo y dinero y elimina esfuerzos innecesarios.

Según un estudio de Digital 2020 Reports realizado por We Are Social Inc. y Hootsuite Inc., el número de usuarios de Internet en todo el mundo está aumentando en 9 personas por segundo. Esto significa que cada día más de 800 mil personas se unen a la comunidad global en línea que usan dispositivos móviles o de escritorio. Curiosamente, la última opción se está volviendo cada vez más popular cada mes.

La penetración de los teléfonos inteligentes en la vida cotidiana está creciendo en todo el mundo. Se espera que para 2024, tres de cada cuatro teléfonos en uso sean teléfonos inteligentes. Según las estadísticas de StatCounter, la proporción de usuarios de escritorio se ha reducido al 45,66%.

imagen

La explicación más simple para este estado de eventos es un cambio en nuestro estilo de vida. Pasamos más tiempo en Internet que nunca. Casi todos tienen acceso a un teléfono inteligente o tableta. Teniendo en cuenta que el usuario promedio pasa casi 7 horas al día en la red en promedio, no es sorprendente que más de la mitad de este tráfico provenga de dispositivos móviles.

Esto, a su vez, empuja el mercado de aplicaciones móviles al crecimiento. El resultado de las preferencias de aplicaciones móviles son números bastante impresionantes. De acuerdo aSegún el informe de Statista del año pasado, los ingresos globales de las aplicaciones móviles en 2019 ascendieron a $ 461 mil millones, y para 2023 se espera que las descargas pagas y los anuncios en la aplicación generen más de $ 935 mil millones en ingresos.

Elegir una ruta de desarrollo móvil


Las aplicaciones son populares no solo entre los usuarios modernos de Internet, sino también bastante rentables para sus propietarios. Si combina estos dos factores, podemos concluir que casi cualquier estrategia de desarrollo empresarial puede incluir la creación de una aplicación. Sin embargo, el dilema es elegir la forma correcta de desarrollar aplicaciones móviles.

Uno de los primeros pasos hacia el éxito digital es una decisión sobre un sistema operativo móvil, que, por cierto, no era tan simple hace diez años cuando Android, iOS, Microsoft, RIM y Symbian eran opciones bastante viables.

Hoy en día, la elección es mucho más simple, ya que los únicos jugadores principales son Android e iOS, que juntos formanalrededor del 99% de la cuota de mercado total de los sistemas operativos móviles. Según diversas estadísticas, Android gana en términos de número de usuarios, pero no faltan los partidarios de iOS, cuya cuota de mercado es del 25,75%. Mientras que Google Play Store cuenta con una gran cantidad de aplicaciones (2.5 millones), Apple App Store contiene más de 1.8 millones de aplicaciones. Este hecho por sí solo es suficiente para mostrar que ninguna de las dos plataformas debe pasarse por alto.

imagen

Dado que la elección de un sistema operativo móvil es una cuestión de preferencias personales de los usuarios, y no una cuestión de rendimiento o disponibilidad, será aconsejable crear una aplicación móvil para Android e iOS, y hay tres formas de hacerlo.

Aplicaciones nativas separadas para Android e iOS


La solución nativa, como su nombre lo indica, implica desarrollar una aplicación en el lenguaje de programación nativo de la plataforma: Java o Kotlin para Android, Objective-C o Swift para iOS. Al estar profundamente centrado en el sistema operativo, el desarrollo de aplicaciones nativas tiene sus ventajas y desventajas. Por un lado, la solución nativa proporciona acceso a todas las funciones de este sistema operativo, le permite personalizar de forma ilimitada la interfaz y evita cualquier problema de rendimiento. Por otro lado, si desea llegar a ambos tipos de usuarios, deberá crear dos aplicaciones separadas que requieran más tiempo, dinero y esfuerzo.

Aplicación web progresiva


Una aplicación web progresiva es una tecnología en desarrollo web que agrega capacidades de aplicaciones móviles a los sitios y transforma el sitio en una aplicación. El resultado es un sitio híbrido y una aplicación para dispositivos móviles. Sin embargo, como cualquier otra opción, las aplicaciones web progresivas no son perfectas, ya que consumen más batería y no pueden acceder a todas las funciones de este dispositivo, por ejemplo, calendario, cámara, contactos, etc. Además, se pierde la posibilidad de iniciar sesión en una aplicación web mediante Facebook, Instagram, Vkontakte u otras aplicaciones. A pesar de que la aplicación web no requiere instalación desde Google Play Store o Apple App Store, estas últimas sirven como bibliotecas extremadamente convenientes para los usuarios.

Una aplicación multiplataforma para dos sistemas.


Multiplataforma es la capacidad del software (en nuestro caso, aplicaciones móviles) para trabajar en varias plataformas.

El desarrollo móvil multiplataforma le permite cubrir dos sistemas operativos, iOS y Android, con un solo código. No implica escribir código en el lenguaje de programación nativo, pero proporciona una experiencia casi nativa gracias a la interfaz de visualización que utiliza sus propios controles.

En este momento, muchas compañías usan soluciones multiplataforma, alguien está considerando seriamente mudarse a ellas en un futuro cercano. Estos no son solo los proveedores de las soluciones en sí, como Facebook con su React Native, que ejecuta aplicaciones de Facebook e Instagram, sino también otros actores importantes del mercado que tienen productos, por ejemplo, en Flutter: Alibaba, Philips Hue, Hamilton, Tencent , Grab, Groupon y otros.

Hay muchos artículos que analizan en detalle todas las ventajas de las aplicaciones multiplataforma. Sin embargo, los pros y los contras deben considerarse en una plataforma que tenga todas las posibilidades de convertirse en 2020 en la más popular entre los desarrolladores: Flutter.

Aleteo


Flutter es un SDK de código abierto de Google para crear aplicaciones móviles multiplataforma que proporciona a los usuarios con Android e iOS un diseño y una experiencia verdaderamente nativos. Esta plataforma de desarrollo ya al principio mostró un crecimiento impresionante en comparación con React Native. Anunciado en Google I / O 2017 y lanzado en 2018, Flutter todavía es un recién llegado al mercado de plataformas de aplicaciones multiplataforma. Con más de 87,700 estrellas en GitHub, que es más alto que el resultado React Native, y la gran mayoría de los desarrolladores lo llaman uno de los tres marcos favoritos en la revisión anual de la Encuesta de Desarrolladores 2019 de Stack Overflow, Flutter es sin duda una fuerza a tener en cuenta.

imagen

Considere los pros y los contras de Flutter como plataforma para el desarrollo de productos:

pros


  • time-to-market;
  • ;
  • ;
  • ;
  • .


  • , ;
  • – Dart, , , . Flutter, ( , ).

El lenguaje de programación Dart, que Google llama "optimizado para el cliente", se introdujo en 2011. Este es un lenguaje orientado a objetos adaptativo que se considera relativamente fácil de aprender por dos razones: en primer lugar, utiliza C / C ++ y Java; En segundo lugar, en el sitio web oficial de Dart puede encontrar documentación extensa y bastante simple. También vale la pena señalar que Dart viene con un gran repositorio de paquetes de software compatibles con Flutter para hacer que su aplicación sea aún más compleja.

Las aplicaciones multiplataforma en Flutter se desarrollan de manera similar a las nativas en los IDE generalmente aceptados: Android Studio y Xcode. Además, el código de recarga en caliente está disponible para los desarrolladores, lo que acelera el lanzamiento de la aplicación durante el desarrollo. Además, el proceso de publicación no es diferente de los nativos: las distribuciones recopiladas se firman y descargan en las tiendas de aplicaciones.

Beneficios de negocio


En los negocios, la métrica TTM (tiempo de comercialización) a menudo juega un papel decisivo. Para estar a la vanguardia e introducir nuevas características en su producto más rápido que los competidores en ambas plataformas a la vez, cualquier empresa líder lo piensa desde el principio. Los marcos multiplataforma permiten lograr esto y, como una ventaja obvia, reciben una reducción en los costos de desarrollo en cada etapa. Según nuestros cálculos, el desarrollo en Flutter le permite reducir el costo total del desarrollo del producto en un 25-30%.

Pronóstico, perspectivas para los próximos 5 años.


Todos los que se preocupan por ingresar rápidamente al mercado con su producto simultáneamente en ambas plataformas de desarrollo móvil ya están desarrollando activamente utilizando soluciones multiplataforma. En 2020, la tendencia no cambiará, y cada vez más empresas utilizarán aplicaciones móviles multiplataforma en Flutter.

Google está desarrollando un nuevo sistema operativo Fuchsia, incluso para dispositivos móviles. Flutter se declara como un kit de herramientas de interfaz de usuario en este sistema operativo. En el futuro cercano, Fuchsia puede reemplazar el sistema operativo Android, y a pesar del hecho de que Fuchsia todavía está agregando la capacidad de ejecutar aplicaciones nativas de Android, vale la pena considerar esta tendencia al planificar el desarrollo e ingresar al mercado con sus aplicaciones móviles.

Por lo tanto, una base de código indudablemente afecta todos los aspectos del desarrollo de aplicaciones hasta el número de desarrolladores requeridos, lo que permite a la compañía ahorrar dinero que generalmente se gasta en arreglar y actualizar dos bases de código separadas. La parte significativa guardada del presupuesto inicial del proyecto se puede gastar en una mejora adicional de la aplicación de acuerdo con las opiniones de los usuarios. Como resultado, el desarrollo multiplataforma de aplicaciones móviles de forma equilibrada logra sus objetivos tanto por el criterio del precio como por el criterio del tiempo, la complejidad y la experiencia del usuario.

All Articles