Tres enfoques para desarrollo de aplicaciones móviles
Clase 5 de 36 • Curso de React Native 2016
Contenido del curso
Requerimientos técnicos del curso
Introducción al Desarrollo Mobile
Primera App con React Native
PlatziMusic
Autenticación de usuarios
Agreguemos las funcionalidades principales a nuestra app: likes y comentarios
- 23

Refactor y referencias de Firebase
07:06 min - 24

Agrega la funcionalidad para hacer Like a un artista
26:30 min - 25

Envia comentarios de un artista y almacénalos en Firebase
16:49 min - 26

Lista los comentarios de un artista trayendo los datos desde Firebase
19:43 min - 27

Agrega un avatar de usuario para mostrar en los comentarios
08:53 min
Refinando detalles de la app
Llevando la app a los Stores
Conclusiones
Desafíos
Si estás comenzando a desarrollar aplicaciones móviles, seguramente notaste que hay múltiples factores para considerar: consumo de batería, conectividad, manejo de memoria e interacción con componentes como teclado y gestos. Además, encontrarás diversas tecnologías como Sensha, PhoneGap, Ionic, React Native, NativeScript y Titanium, que se dividen principalmente en tres enfoques destacables.
¿Qué son las aplicaciones nativas?
Las aplicaciones nativas se desarrollan específicamente en el lenguaje propio de la plataforma:
- Para Android se utiliza Java y XML en Android Studio.
- Para iOS se desarrolla con Objective-C o Swift en Xcode.
La experiencia del desarrollador en este enfoque implica:
- Uso exclusivo del entorno de desarrollo de cada plataforma.
- Imposibilidad de reutilizar código para otras plataformas.
- Ciclo de retroalimentación o feedback cycle lento debido a constantes compilaciones y pruebas.
- Distribución solamente a través de tiendas oficiales (Google Play o Apple Store) con posibles demoras en revisiones y aprobaciones.
Por otro lado, la experiencia de usuario (user experience) es ideal, proporcionando una interfaz y rendimiento auténticamente nativos, con fluidez y capacidad de respuesta óptimas.
¿Cómo funcionan las aplicaciones híbridas?
Las aplicaciones híbridas se crean utilizando tecnologías web como JavaScript, HTML y CSS, ejecutándose dentro de un contenedor manejado principalmente por Apache Cordova. La experiencia de desarrollo es más accesible, ya que permite:
- Desarrollo multiplataforma con tecnologías conocidas del ámbito web.
- Flexibilidad en la elección del editor de texto.
- Ciclo de feedback más rápido con actualizaciones inmediatas.
- Posibilidad de realizar actualizaciones over the air sin depender del proceso burocrático de revisión de las tiendas.
Sin embargo, la experiencia del usuario puede verse comprometida, dado que los componentes visuales son imitaciones realizadas en HTML, CSS y JavaScript. Esto limita la fluidez y la consistencia visual con respecto al sistema operativo nativo.
¿Por qué elegir aplicaciones bridgeadas como React Native?
Las aplicaciones bridgeadas combinan lo mejor de los dos mundos anteriores. Con tecnologías como React Native, puedes:
- Utilizar tecnologías web para desarrollar.
- Crear interfaces de usuario con componentes auténticamente nativos, no imitaciones.
- Mantener tiempos de feedback rápidos.
- Hacer actualizaciones vía métodos over the air.
La diferencia esencial aquí es la calidad de la experiencia de usuario y el rendimiento, que iguala al de las aplicaciones nativas. Además, una arquitectura con 'bridge' conecta el código JavaScript con componentes nativos reales para gestionar acciones y eventos.
Este enfoque ofrece ventajas claras en eficiencia y una experiencia de usuario mejorada.
Ahora que conoces estos enfoques, puedes tomar una mejor decisión según tus habilidades, recursos y metas del proyecto de desarrollo móvil que vayas a iniciar. ¿Qué método se adapta mejor a tus necesidades y tu equipo? ¡Déjanos tu comentario!