DESARROLLO MOVIL_13_08_2024.docx
Document Details
![UncomplicatedKeytar9208](https://quizgecko.com/images/avatars/avatar-5.webp)
Uploaded by UncomplicatedKeytar9208
INFOTEP
Tags
Full Transcript
**¿Qué es el desarrollo de aplicaciones móviles?** La definición de desarrollo de aplicaciones móviles puede llegar a ser amplio, ya que puede abarcar todos los procesos necesarios que se realizan para crear y publicar una aplicación móvil, o puede ser más específico, abarcando la codificación y la...
**¿Qué es el desarrollo de aplicaciones móviles?** La definición de desarrollo de aplicaciones móviles puede llegar a ser amplio, ya que puede abarcar todos los procesos necesarios que se realizan para crear y publicar una aplicación móvil, o puede ser más específico, abarcando la codificación y la implementación de la aplicación. Siendo más específicos se puede definir como el proceso de crear aplicaciones para diferentes dispositivos móviles, sean smartphones, portátiles, tabletas, etc. **¿Cuáles son los pasos a seguir para el proceso desarrollo de las aplicaciones móviles?** El proceso de desarrollo de aplicaciones móviles se puede definir en seis fases: - Estrategia: En esta etapa se comprende él porque una aplicación móvil sería la mejor solución a la problemática que se presenta, luego se decide que se debe crear y el cómo se debe crear. Se toman en cuenta otros elementos como los objetivos, análisis de mercado, las necesidades de los clientes, etc. - Planificación: En esta fase se establecen cuatro detalles importantes en el desarrollo de la app: Los equipos, las tecnologías, las herramientas y los plazos. En esta fase ya se tiene una idea de que tipo de app se desea crear, quien la creara y las plataformas a utilizar. - Diseño: En esta fase se establecen elementos como lo son: El aspecto, las características y las funciones de la app. Los equipos comienzan a desarrollar la UX (Experiencia de usuario) y las UI (Interfaces de usuario) en diferentes niveles de diseño, los desarrolladores e ingenieros pueden intervenir en esta fase para brindar asesorías en las decisiones UX y UI. - Implementación: En esta fase los equipos establecen la arquitectura técnica y una pila tecnológica (Conjunto de herramientas y servicios para el desarrollo de apps), añadido a esto se incluye el front-end, back-end y las API, fijando eventos clave, culminando con determinar un ciclo de vida para la aplicación, pudiendo comenzar la codificación. - Pruebas: Una de las fases mas criticas y fundamentales en todo el proceso, es donde se debe asegurar que la aplicación funcione correctamente tanto para los usuarios como donde se implementen ejecutando la aplicación y pasándola por pruebas de estrés asegurándose que la app pueda soportar una demanda repentina. - Lanzamiento: La fase final donde la app es lanzada y los usuarios pueden hacer uso de ella, donde a la misma se le dará mantenimiento y supervisión por parte de sus desarrolladores. **Desarrollo de software en el proceso de desarrollo de aplicaciones móviles** Esta es la primera tarea a realizar durante la fase de desarrollo donde se establece una arquitectura técnica, la cual es una serie de reglas y patrones que se establecen en el desarrollo de una aplicación móvil, a menudo confundida con la pila técnica, pero la pila técnica es la que incluye toda la tecnología a usar en el front-end, back-end y las API. **Arquitectura técnica** La arquitectura técnica suele tener tres capas: - Capa de presentación: Contiene toda la UI y UX con la que interactúa el usuario. - Capa de negocio: Es donde reside toda la parte lógica del negocio, los flujos de trabajo, los intercambios de datos y las operaciones. Otros eventos importantes suceden en esta capa como lo son, el majeo de errores, el almacenamiento cache, la seguridad y los registros. - Capa de datos: Es la capa que se encarga de validar los datos y mantenerlos, a su vez responde a los requisitos de la app. **Pila de tecnología** Contiene las tecnologías necesarias para construir las capas mencionadas: - Front-end: La parte de la app que contiene la interfaz de usuario. - Back-end: La parte de la app que contiene la lógica y se conecta con las bases de datos. - API: El medio de comunicación entre el front-end y back-end. **¿Cuáles son los tipos de aplicaciones móviles?** - Aplicaciones nativas: Son aplicaciones hechas para un dispositivo en específico, se denominan nativas, porque se ejecutan únicamente en el sistema operativo del equipo sea Android o IOS. Suelen desplegarse por medio de la tienda o Marketplace del sistema. Este tipo de app tiene acceso total al hardware del dispositivo. - Multiplataforma: Permite a los equipos codificar las aplicaciones y luego compilarlas en cada sistema donde se vayan a utilizar haciendo uso de plataformas como Xamarin. Se les denomina multiplataforma porque permiten ejecutar sus apps en diferentes sistemas y dispositivos, haciendo posible la reutilización del código. - Aplicaciones web progresivas: Estas se desarrollan con HTML5, CSS y JavaScript, lo que las hace progresivas es su capacidad de ofrecer notificaciones push, mejores gestos táctiles y interacciones con el hardware del dispositivo usando las capacidades del navegador. - Aplicaciones hibridas: Son mezclas entre aplicaciones nativas y web progresivas, son contenedores codificados de forma nativa donde se ejecutan aplicaciones web. **¿Qué tipo de aplicación móvil se debe crear?** Al momento de querer desarrollar una aplicación, se debe tener en cuenta las necesidades de los usuarios y el tipo de dispositivo que estos utilizan, de esta forma se puede saber qué tipo de aplicación se puede crear, las aplicaciones nativas son mejores para los usuarios que usan un sistema en específico dado que ofrecerán un mejor rendimiento, mientras que, las aplicaciones web progresivas y las hibridas, son más económicas y si bien nos permiten llegar a más dispositivos están limitadas en el acceso al hardware del equipo. En resumen, dependiendo de las necesidades, costos, tiempo de desarrollo y la experiencia del mismo equipo se puede tener un enfoque de desarrollo u otro, es decir, las aplicaciones nativas son mejores para aplicaciones completas, pero las aplicaciones hibridas servirán mejor en aplicaciones más simples. **Plataformas y software de desarrollo** Al culminar la decisión de que tipo de aplicación crear, es tiempo de decidir que plataforma se utilizara, estas plataformas vienen equipadas con tecnología front-end, back-end y API, herramientas de prueba, etc. Permitiendo al desarrollador un mejor movimiento entre las capas o partes de la aplicación y lidiar con los problemas que surgen, como puede ser la incompatibilidad. La mayoría de los desarrolladores eligen crear sus apps primero en Android ya que es uno de los sistemas más utilizados, junto a ello la play store tiene menos restricciones a la hora de publicar, pero, IOS cuenta con la ventaja de no tener que optimizar la app para tantos equipos lo que resulta en una mayor retención de usuarios. En general se dónde se desarrolla la aplicación depende del público objetivo y del caso de uso de la aplicación. **Crear para una plataforma móvil: simplifique** El desarrollo de aplicaciones móviles llega a presentar desafíos sea la app nativa o hibrida, dado a que los dispositivos móviles tienen menos recursos que los PC o servidores, por lo que resulta crucial el ajustar los objetivos de diseño para poder adaptarse a la menor potencia de procesamiento y memorias de los dispositivos móviles. Con el fin de ofrecer una experiencia óptima para los usuarios, los diseños de las interfaces de la aplicación son más sencillos y se centra en las funciones esenciales. El diseño debe ser intuitivo para el uso de las funciones táctiles, permitiendo la navegación y una entrada de datos rápida. **Uso de la nube** En caso de necesitar más potencia de procesamiento en la aplicación se puede optar por usar la nube, manteniendo la aplicación ligera y rápida evitando sobrecargas, además, se pueden integrar API de servicios en la nube añadiendo funcionalidades como notificaciones push, análisis por IA, aumentando el rendimiento y la usabilidad de la app.