paint-brush
¿Convertir el sitio web en una aplicación móvil? — Tengo cuatro opciones para tipor@oleksii.she
155,928 lecturas
155,928 lecturas

¿Convertir el sitio web en una aplicación móvil? — Tengo cuatro opciones para ti

por Oleksii Shevchenko2018/06/20
Read on Terminal Reader
Read this story w/o Javascript

Demasiado Largo; Para Leer

Una estrategia de MVP se trata de descubrir cómo hacer que los usuarios elijan su producto, validar el ajuste del producto/mercado y poner en marcha el proceso de iteración. Más tarde, cuando obtenga tracción, puede concentrarse en brindar una experiencia de usuario convincente; pero al principio, se trata de obtener los comentarios iniciales de los usuarios.

People Mentioned

Mention Thumbnail

Companies Mentioned

Mention Thumbnail
Mention Thumbnail

Coin Mentioned

Mention Thumbnail
featured image - ¿Convertir el sitio web en una aplicación móvil? — Tengo cuatro opciones para ti
Oleksii Shevchenko HackerNoon profile picture

Una estrategia de MVP se trata de descubrir cómo hacer que los usuarios elijan su producto, validar el ajuste del producto/mercado y poner en marcha el proceso de iteración. Más tarde, cuando obtenga tracción, puede concentrarse en brindar una experiencia de usuario convincente; pero al principio, se trata de obtener los comentarios iniciales de los usuarios.

En este artículo, lo ayudaremos a pensar en un MVP como un mecanismo eficiente para generar un ciclo virtuoso entre la creación de valor y la recopilación de datos. Recuerde, como emprendedor estratégico que optimiza recursos escasos, en la mayoría de los casos su mejor apuesta es optar por la solución más práctica. Pssst…aplicaciones web ;)

Recordando los principios de 'Lean Startup'

Si está haciendo despegar una empresa de tecnología y su negocio no se relaciona directamente con las características de un teléfono inteligente (por ejemplo, la cámara o el micrófono de un teléfono inteligente), podría tener más sentido comenzar a desarrollar su cliente con un MVP basado en la web ( Mínimo Viable ). Producto ), es decir, una 'aplicación web' alojada en un navegador como Chrome o Safari. Lo crea o no, en realidad pueden llegar a más usuarios que las aplicaciones móviles, y a medida que los navegadores se vuelven cada vez más funcionales, sus capacidades crecen rápidamente.

Si bien el caso comercial de una aplicación como Uber o Instagram depende directamente de las características y la funcionalidad del dispositivo (geolocalización), existen muchos otros productos que no necesitan interactuar con las API móviles; y gracias al diseño web receptivo, estas aplicaciones pueden beneficiarse de espacio adicional en la pantalla, una experiencia de escritura móvil más conveniente y la accesibilidad multiplataforma que ofrece el diseño de la aplicación web.

En estos días, las opciones tecnológicas para el desarrollo de aplicaciones móviles disponibles para los empresarios son abundantes. Las principales diferencias entre ellos se reducen a la velocidad de implementación, el costo y la calidad del producto final. Comprender las diferencias entre themas, así como los diversos enfoques para implementarlos, es la parte difícil.

Es posible que la distancia más corta entre su MVP y los comentarios de los clientes que necesita para poner en marcha su negocio sea una aplicación web, en lugar de una aplicación nativa. Entonces, analicemos cuatro tecnologías populares de aplicaciones móviles que ilustrarán las diferencias comunes entre ellas. Estos le ayudarán a identificar la forma más práctica de validar su idea de negocio y facilitar el desarrollo de productos concomitantes.

Aplicaciones web progresivas

Esta tecnología relativamente nueva desarrollada por Google permite que los dispositivos móviles agreguen un sitio web o una aplicación web a la pantalla de inicio de un teléfono inteligente y puedan interactuar con él sin conexión.

Para convertir una aplicación web normal en una aplicación web progresiva, solo necesita agregar un ícono de pantalla de inicio, un manifiesto de aplicación web y un trabajador de servicio que permita que el sitio funcione sin conexión y se cargue más rápido, así como enviar notificaciones automáticas. Tenga en cuenta que cuando carga una aplicación web progresiva en el navegador de su teléfono, solicita al dispositivo que agregue el sitio a la pantalla de inicio. Actualmente, las aplicaciones web progresivas no son totalmente compatibles con los dispositivos iOS, pero es de esperar que esto cambie en un futuro próximo.

ventajas

  • Permite notificaciones push
  • Las aplicaciones pueden funcionar en modo fuera de línea
  • Los sitios subyacentes generalmente obtienen una mejor clasificación en los motores de búsqueda.

Contras

  • Esta tecnología es solo un contenedor de navegador, no una aplicación completamente funcional, por lo que técnicamente sigue siendo un sitio web.
  • Los usuarios no obtendrán una experiencia de aplicación nativa (es decir, interacciones, animaciones, rendimiento) ya que la interfaz de usuario es solo una ventana de navegador de pantalla completa sin una barra de URL que puede funcionar sin conexión.
  • Mala compatibilidad (todavía no disponible para iPhones y iPads)

Vale la pena mencionar que el Washington Post fue una de las primeras empresas de medios en utilizar una aplicación web progresiva para ampliar el alcance de su sitio web. Las aplicaciones web progresivas son una excelente manera de complementar un sitio web o una aplicación web, ampliando su alcance. Tienen el potencial de mejorar drásticamente la experiencia global del usuario con dispositivos que los admitan; sin embargo, dado que esta tecnología aún no ha alcanzado una adopción masiva, debe considerarse como un medio adicional para ampliar el alcance de un sitio web, en lugar de convertir un sitio web en una aplicación móvil.

Aplicaciones móviles híbridas

Apache Córdoba

Apache Cordova es un marco que permite a los desarrolladores crear aplicaciones móviles utilizando HTML, CSS y Javascript.

Las aplicaciones creadas con Apache Cordova funcionan en un entorno de navegador integrado (WebView) en diferentes plataformas móviles (Android, iOS) y se pueden descargar desde App Store o Google Play Store. Vienen con un ícono que existe en la pantalla de inicio y pueden interactuar con las API de hardware del teléfono inteligente para habilitar la funcionalidad de las características del dispositivo (geolocalización, cámara, etc.).

Vale la pena mencionar: la experiencia del usuario de una aplicación creada con este marco no será tan fluida como lo sería en una aplicación nativa. La apariencia de la interfaz es similar a la de un sitio web (es decir, retrasos de clic de 300 ms, clics fantasma mientras se desplaza, etc.). Por supuesto, hay módulos y marcos que ofrecen componentes de interfaz de usuario diseñados para ser similares a las aplicaciones nativas, pero aún se quedan cortos en comparación con la experiencia nativa.

Además de Cordova, algunos otros marcos populares a considerar son Ionic y PhoneGap . Echa un vistazo a la aplicación móvil del Museo Nacional de Historia y Cultura Afroamericana :

Tenga en cuenta que esta aplicación se creó con el marco Ionic y ofrece las siguientes características:

  • Habilidad para buscar/investigar objetos específicos dentro del museo
  • Funciones de video y realidad aumentada
  • Compartir a través de las redes sociales
  • Mapas interactivos del museo
  • Eventos

Un ejemplo reciente de una aplicación híbrida que creamos en Ezetech es Tickfinity , un POS de TicketNetwork para dispositivos móviles ( video ).

ventajas

  • Alta velocidad de desarrollo
  • Codificado en tecnologías de desarrollo web (HTML, CSS, Javascript) que producen iOS, Android y software web compatibles entre sí (solo se necesita un desarrollador web)
  • Hay marcos disponibles que emulan elementos nativos de la interfaz de usuario de la aplicación (es decir, botones, menús, etc.)
  • UX está muy cerca de una experiencia nativa usando elementos de UI que imitan el comportamiento de la aplicación nativa
  • Acceso a la API de hardware del teléfono inteligente, lo que facilita la funcionalidad del dispositivo (por ejemplo, cámara, notificaciones automáticas, geolocalización y otros)

Contras

  • UX no es tan bueno como lo es en aplicaciones nativas (retrasos de clic de 300 ms, clics fantasma mientras se desplaza, etc.)
  • Cuanto más compleja es la aplicación, más lento funciona debido a los diversos contenedores y bibliotecas empleados.
  • no funciona sin conexión
  • Las animaciones son difíciles de implementar en la interfaz de usuario

Esta opción es excelente para los MVP que implican aplicaciones web o móviles simples; si ya tiene una aplicación web creada con Javascript, puede aprovechar su código existente. En pocas palabras: Apache Cordova es bueno para crear rápidamente aplicaciones móviles decentes y de bajo costo con funcionalidad de aplicación móvil estándar.

reaccionar nativo

React es una excelente opción si su aplicación web está construida con React.js. Es una de las últimas tecnologías en el mundo de las aplicaciones híbridas, y la migración desde una aplicación web existente se puede realizar con bastante rapidez. Como resultado, obtiene una aplicación móvil que utiliza componentes nativos del sistema operativo de su teléfono inteligente (botones nativos, entradas y otras funciones del dispositivo). El rendimiento es bueno porque su código fuente se convierte en una aplicación móvil nativa en lugar de ejecutarse en una ventana de navegador integrada.

Algunos ejemplos de aplicaciones que usan React Native:

  • Instagram
  • Facebook
  • skype
  • airbnb
  • Bloomberg, etc

ventajas

  • Alta velocidad de desarrollo para las aplicaciones basadas en React
  • La aplicación web creada con React.js se puede convertir fácilmente en una aplicación móvil React Native y parte del código fuente se puede reutilizar
  • Experiencia de usuario nativa
  • La aplicación se ve y se siente exactamente como una aplicación móvil nativa para una plataforma específica
  • Reduce los costos de desarrollo
  • Los expertos en React Native generalmente pueden crear aplicaciones para Android e iOS

Contras

  • Tecnología relativamente nueva (soluciones limitadas de código abierto)
  • Limitado con respecto al diseño visual
  • No es ideal para proyectos complejos como juegos móviles o aplicaciones que requieren una gran carga (cálculos significativos)

React Native es la tecnología más popular para el desarrollo de aplicaciones móviles híbridas. Es utilizado por las corporaciones digitales más grandes y tiene muchas ventajas. Es una buena opción si su aplicación no necesita mantener múltiples conexiones en tiempo real con el servidor o realizar cálculos complejos. La tecnología aún es bastante nueva, y no hay tantas bibliotecas y módulos de código abierto como hay para las tecnologías de desarrollo de aplicaciones móviles nativas, pero se está desarrollando rápidamente.

Desarrollo de aplicaciones nativas

La creación de aplicaciones nativas para cada plataforma es la mejor opción en términos de rendimiento y calidad del producto, pero también es el enfoque más costoso. Si ya tiene una aplicación web, solo necesitará crear clientes móviles para la aplicación móvil Android y la aplicación móvil iOS, que se conectarán al mismo backend que su cliente web. Es posible que aún se necesiten cambios menores en el backend, pero esto no debería llevar mucho tiempo.

Por lo general, necesitará al menos 2 desarrolladores involucrados: un desarrollador de iOS que trabaje en la aplicación de iPhone usando el lenguaje de programación Objective-C o Swift, y un desarrollador de Android que use Java o Kotlin, por lo tanto, el costo de desarrollo será más alto que en cualquiera de los enfoques anteriores. Al mismo tiempo, tiene flexibilidad para crear una versión inicial solo para una plataforma y considerar agregar otra plataforma más adelante. La primera plataforma a elegir se puede determinar investigando el público objetivo utilizando servicios como Mapbox .

Algunos ejemplos de aplicaciones móviles nativas populares:


**Coinbase:** Una de las aplicaciones más populares para operar con criptomonedas.


**Uber:** La aplicación de transporte más popular

ventajas

  • Muchos módulos y bibliotecas disponibles para resolver tareas de desarrollo comunes
  • Buen rendimiento y excelente experiencia de usuario en todas las plataformas móviles
  • Permite que la aplicación acceda a todo el hardware del dispositivo permitido por el fabricante
  • Puede trabajar sin conexión y almacenar datos localmente en el dispositivo

Contras

  • Costos más altos en comparación con el desarrollo de aplicaciones híbridas
  • Diferentes pilas de tecnología para diferentes plataformas (se necesita más desarrollador)

Tenga en cuenta que crear una aplicación nativa desde el principio suele ser mejor si tiene los recursos. Las tecnologías para crear este tipo de aplicaciones existen desde hace mucho tiempo y han generado muchas soluciones modulares y comunidades de código abierto disponibles para los desarrolladores para la resolución eficiente de problemas.

Conclusión

Si su aplicación necesita realizar cálculos complejos, mantener una conexión en tiempo real con un servidor u ofrecer a los usuarios una funcionalidad única que requiere una interacción continua con otras aplicaciones, definitivamente debe optar por una aplicación nativa. También es posible crear una aplicación React Native que cubra todas las funciones comunes y crear módulos iOS/Android nativos para manejar funciones no compatibles con React Native. Esta es una solución efectiva, pero requiere que sus desarrolladores estén familiarizados con la web y las tecnologías móviles nativas al mismo tiempo. A menudo, estos profesionales son ex desarrolladores móviles nativos que aprendieron desarrollo web y son difíciles o costosos de encontrar e incorporar.

En realidad, solo hay dos opciones que funcionan bien para la migración de una aplicación web a un dispositivo móvil: desarrollar una aplicación híbrida o comenzar desde cero y crear una aplicación nativa. Si la funcionalidad de su producto no es demasiado complicada y solo desea ofrecer a los usuarios móviles una mejor experiencia, debe optar por React Native para el desarrollo de su aplicación híbrida. Esta también es una opción si su presupuesto es ajustado y necesita compatibilidad con Android e iOS.

Alternativamente, puede crear aplicaciones móviles nativas, con la funcionalidad más importante y mejorarlas a medida que crece su negocio. El desarrollo progresivo de aplicaciones web es un nuevo paradigma tecnológico y se puede utilizar como un medio para ampliar el alcance de su producto; simplemente no piense en ello como una solución móvil para los usuarios. En realidad, como empresario que toma las decisiones difíciles, depende de usted cómo quiere gastar su tiempo y sus recursos.

Publicado originalmente en EzeTech Blog

Explore cómo su negocio puede beneficiarse de trabajar con nosotros: programe su consulta gratuita de 30 minutos con los profesionales de Ezetech ahora.

¡Y no olvides dar tu 👏 a continuación! ;)