Soy un desarrollador web front end senior que desea crear aplicaciones móviles. Como tengo experiencia en tecnologías web, ¿debería elegir un marco híbrido, por ejemplo, Ionic o ser nativo?

La “ruta híbrida” termina obteniendo el 80% del camino de una manera bastante sencilla. El 20% restante está lleno de hacks y dolores de cabeza.

Escribe una vez, depura en todas partes.

Descubrí que, a menos que intentes apuntar a una plataforma única o crear una aplicación bastante simple, terminarás lidiando con una tonelada de frustración con HTML5.

Comencé a crear un marco Backbone.js que implementaba algunos de los controladores nativos de Apple: Navigation y Tab Bar, y había creado ganchos donde podía insertar animaciones de transición personalizadas entre las vistas.

Encontré un error en el navegador nativo en un dispositivo Android de gama baja que ejecutaba una animación CSS, pero no activaba ningún evento. Funcionó en cualquier otro dispositivo Android, incluso de la misma versión, que pude probar. Esto me recordó mis días de J2ME.

Después de unos días de depuración decidí que ya no valía la pena … Pasé cientos de horas tratando de emular una experiencia casi nativa simplemente porque me sentía más cómodo con la “tecnología web”.

Con Native estás ganando desde el principio. Es más rápido, compatible, bien pensado y probado.

Creo que se beneficiaría al eliminar la “web” de su título de “programador web”. El aprendizaje y la confianza que conlleva la competencia es una recompensa en sí misma.

Puedo tener un pequeño sesgo en mi respuesta debido al fondo de .net.

Pero estoy de acuerdo con la observación de Peter de que el enfoque híbrido no vale la pena para una aplicación seria. Si está invirtiendo tiempo en ello, es mejor hacerlo de la manera correcta.

Su principal preocupación durante el desarrollo sería: si necesita admitir múltiples plataformas y dispositivos como Android e iOS, ¿por qué debería aprender Swift y Android SDK por separado para construir la misma d … cosa? Además, ¿cómo puede hacer que sus propias habilidades sean más útiles para esto?

Veo dos plataformas que puedes probar:

  1. Xamarin: tienen una capa de interfaz de usuario separada para cada dispositivo, pero puede compartir un código de capa empresarial común y seguir creando aplicaciones nativas verdaderas. También puede crear aplicaciones con XAML y MVVM. Sus habilidades de front-end son útiles para tomar decisiones sobre qué control debe colocarse y dónde. Y C # es de todos modos un gran lenguaje para codificar.
  2. NativeScript: aquí puede usar su conocimiento existente de HTML y JavaScript para crear aplicaciones True Native para iOS y Android. Y no solo JavaScript, sino también TypeScript. Las habilidades angulares también serán útiles.

Para ambas plataformas, existe un fuerte respaldo de grandes nombres como Microsoft y Telerik y hay comunidades vibrantes de otros desarrolladores.

Si aún desea explorar la ruta híbrida / iónica, primero consulte las aplicaciones web progresivas de Google. Parece que tiene buen futuro.

Un enfoque híbrido es una combinación única de web y nativo que unifica las desventajas de ambos. Al igual que las aplicaciones web, las híbridas se crean utilizando los lenguajes conocidos y populares: HTML, CSS y Javascript. Esto reduce el costo del proyecto ya que el mercado está saturado de expertos calificados. Al igual que las aplicaciones nativas, las aplicaciones híbridas se instalan en el dispositivo del usuario y se descargan de los mercados de aplicaciones. Gracias a esto, tienen una eficiencia notablemente mayor que las aplicaciones web y pueden acceder a una variedad más amplia de capacidades de hardware, sensores y recursos del sistema operativo, como acelerómetro, sensor GPS, almacenamiento de archivos o libreta de contactos. A diferencia de los sitios web móviles, lanzados con la ayuda de un navegador, para un software híbrido, la interacción con los servidores es solo de naturaleza auxiliar.

Ionic es, probablemente, el marco más famoso y útil utilizado para el desarrollo, construcción, prueba, depuración y despliegue de aplicaciones híbridas.

Bueno, usted es un desarrollador web senior y debe saber que es muy importante tener a mano las nuevas tecnologías. Las aplicaciones nativas pueden ser una buena opción, pero según mi opinión, la tendencia híbrida está en el mercado y todos descubren nuevas formas y exploran estas plataformas para obtener algo nuevo todos los días. Hay varias plantillas, en construcción
SDK para atraer. Creo que al menos deberías probarlo de una vez.

El marco iónico es nuevo en el mercado para trabajar. Ionic Order se usa porque las reglas HTML5 en plataformas móviles como iOS y Android UI ven en la Web que en el escritorio. Las aplicaciones compuestas iónicas están escritas en CSS, HTML y JavaScript y también usan AngularJS para agregar más funcionalidades.

También puedes consultar Ionic Framework | Master Software Solutions y el blog para obtener actualizaciones recientes y lo que el equipo de MSS está trabajando y llevando nuevas cosas al mercado en el blog de Master Software Solutions

La respuesta más rápida sería: sí, vaya con un marco móvil híbrido. Ionic funcionará bien.

Sin embargo, si estuviera dispuesto a hacerlo, le beneficiaría mirar el nuevo lenguaje de programación Swift de Apple e intentar aprender un nuevo lenguaje que estará presente en el futuro del desarrollo de iOS.