Android como se esctructuran las app?
-
𝖠𝗎𝗍𝗈𝖡𝖺𝗇𝗇𝖾𝖽
como se esctructuran las app?
Las mas basicas,tipo crome,wallapop,wassap,tellegram...
cuantas carpetas tiene cada app? es decir,como se estructura cada app?
-
ForoParalelo: Miembro
La estructura interna de una aplicación móvil, como las que mencionas (Chrome, Wallapop, WhatsApp, Telegram), sigue patrones comunes basados en principios de desarrollo de software. Sin embargo, la organización exacta puede variar dependiendo de factores como la plataforma (Android, iOS), el framework usado, y las preferencias de los desarrolladores. Aquí tienes una visión general de cómo se suelen estructurar:
1. Estructura típica de una aplicación Android (Java/Kotlin):
Carpetas principales:
- app/
- Contiene todo el código fuente y recursos de la aplicación.
- src/
- Subdividida en:
- main/
- java/: Código fuente de la app.
- Organizas los paquetes según características o capas (por ejemplo, ui, model, repository, service).
- res/: Recursos como imágenes, layouts XML, cadenas de texto, estilos, etc.
- drawable/: Imágenes e íconos.
- layout/: Archivos XML para las pantallas.
- values/: Strings, colores, tamaños, estilos, etc.
- mipmap/: Íconos de la app en diferentes resoluciones.
- AndroidManifest.xml: Archivo de configuración principal.
- test/ y androidTest/: Pruebas unitarias y de integración.
- build/
- Archivos generados automáticamente durante la compilación.
- gradle/
- Archivos para la configuración del sistema de construcción de la app.
2. Estructura típica de una aplicación iOS (Swift/Objective-C):
Carpetas principales:
- App/
- Contiene todo el código y recursos.
- Sources/
- Código fuente de la app:
- View/: Archivos de interfaz de usuario (storyboards o SwiftUI views).
- Model/: Modelos de datos.
- ViewModel/ (si usas MVVM): Lógica de presentación.
- Controller/ (si usas MVC): Controladores que gestionan la interacción entre la UI y los datos.
- Assets/
- Recursos como imágenes, fuentes y colores.
- Info.plist
- Archivo de configuración que define propiedades como permisos requeridos, íconos, y más.
- Tests/
3. Patrones comunes de arquitectura en apps complejas:
Las apps como WhatsApp o Telegram suelen seguir patrones de arquitectura para mantener el código organizado:
- MVC (Model-View-Controller):
- Model: Maneja los datos y lógica del negocio.
- View: Se encarga de la UI.
- Controller: Coordina entre el modelo y la vista.
- MVVM (Model-View-ViewModel):
- ViewModel maneja la lógica de presentación y permite una mejor separación de responsabilidades.
- Clean Architecture:
- Divide la app en capas: Dominio, Datos, e Interfaz.
4. ¿Cuántas carpetas puede tener una app?
Dependerá de la complejidad, pero las apps básicas suelen tener entre 5 y 15 carpetas principales, organizadas para manejar:
- UI (pantallas, componentes).
- Datos (modelos, bases de datos).
- Red (peticiones API, servicios).
- Lógica (cálculos, transformaciones de datos).
- Pruebas (unitarias y de integración).
- Recursos (imágenes, cadenas, íconos, etc.).
Ejemplo
app/ src/ main/ java/com/whatsapp/ ui/ LoginActivity.java ChatActivity.java model/ User.java Message.java repository/ ChatRepository.java UserRepository.java network/ ApiClient.java ApiService.java service/ NotificationService.java res/ layout/ activity_login.xml activity_chat.xml drawable/ logo.png chat_icon.xml values/ strings.xml colors.xml mipmap/ ic_launcher.png
-
𝖠𝗎𝗍𝗈𝖡𝖺𝗇𝗇𝖾𝖽
no uses chatgpt,por favor
Permisos de publicación
- No puedes crear nuevos temas
- No puedes responder temas
- No puedes subir archivos adjuntos
- No puedes editar tus mensajes
-
Reglas del foro
▲
▼
Atajos de Navegación Disponibles