Estructura de una Aplicación

En este artículo, explicaré los distintos componentes que formar parte de una aplicación.


Actividad (También conocida como Activity)

En Android, se le conoce como una ventana que contiene la interfaz de usuario (o pantalla) para su aplicación y los usuarios interactúan directamente con las actividades de las aplicaciones. Es decir, es el componente más habitual de las aplicaciones para Android. La mayoría de las aplicaciones permiten la ejecución de varias acciones a través de la existencia de una o más pantallas.

Por ejemplo, recordando a WhatsApp se muestra el listado de los contactos con los cuales conversaste siendo la primera actividad, una de las características en esta actividad es poder hacer clic en la conversación y enviarte al historial de la conversación que sería la segunda actividad, o tal deseas realizar una fotografía este sería la tercera actividad. Sin embargo en la primera actividad tenemos 3 pestañas, esto debido a que utiliza otro componente llamado Fragment, el cual también estaremos aprendiendo sus características en este post.

Una actividad tiene un ciclo de vida, considerada ciclo de vida de una aplicación.


Intents

Son mensajes que provocan notificaciones y cambios de estados que al ser recibidos por actividades o servicios pueden levantar procesos. De esta forma, se unen componentes dentro de una misma aplicación o de diferentes aplicaciones.

   
	/*
      Author: Ing. Dick Díaz Delgado
   */

   //Creamos un Intent
   Intent intent = new Intent();
   //Llamamos a formulario o actividad : Detalle
   startActivity(intent);


Vistas (Views)

Son los componentes de la interfaz de usuario. Se trata de diferentes vistas que pueden agruparse a través de grupos, logrando una jerarquía. Esto se logra a través de la disposición de los componentes por medio de un archivo XML.


Servicios (Services)

Son componentes que se ejecutan operaciones en segundo plano (Background), y no tienen una interfaz de usuario. Un ejemplo clásico al escuchar música hay un servicio encargado de la reproducción que se ejecuta de fondo un ejemplo muy común, es un antivirus que esta funcionando de fondo.


Proveedor de Contenido (Content Providers)

Permite la abstracción para el almacenamiento y obtención de datos permanentes de aplicaciones diferentes. El sistema incluye algunos proveedores de contenidos útiles (audio, video, etc.)


Receptores de Difusión (Broadcast Receivers)

Son componentes que responden a avisos y a anuncios de difusión (broadcast). Estos avisos provienen del sistema (batería baja, una llamada entrante, etc.) y de aplicaciones (pasando avisos de una aplicación a otra). Aunque no muestra una interfaz de usuario; algunas veces, utiliza barras de progreso para mostrar avances. Estos se activan a través de mensajes asíncronos llamados "intents".


Fragmentos

Los fragmentos permiten que una aplicación se divida en subcomponentes para poder manejarlos de manera individual y combinarlos de distintas formas como si fuesen paneles. Es decir, en un dispositivo de pantalla pequeña (como un teléfono inteligente), una actividad típicamente llena toda una pantalla., mostrando los diversos puntos de vista que componen la interfaz de usuario de una aplicación. 

La actividad es esencialmente un contenedor. Sin embargo, cuando una actividad se muestra en un dispositivo de pantalla grande, como en una Tablet, la pantalla se vuelve mucho más grande y todos los elementos en una actividad deben estar dispuestos a hacer un uso completo de la pantalla más grande lo que resulta en cambios complejos a la jerarquía de visualización.

Un mejor enforque sería contar con miniactividades donde cada una de ellas cuente con su propio conjunto de puntos de vista.


Espero este contenido haya sido de gran ayuda para los fundamentos de aplicaciones móviles, ahora que sabes como está compuesta la estructura de una aplicación te resultará más sencillo poder diseñarla de acuerdo a tu conveniencia.


Comentarios

Entradas populares de este blog

Practica de Diagrama de Flujo Intermedio - Resueltos

Personaliza tus reportes PDF desde PHP con la librería FPDF

Ejercicios Básicos para aprender a programar en Android Studio [Java y Kotlin]