B3-T10 Desarrollo para dispositivos móviles. Frameworks nativos e híbridos. Flashcards
Señale la respuesta INCORRECTA. Android NDK:
a) Es un conjunto de herramientas que permiten implementar partes de las aplicaciones de Android mediante C y C++.
b) Genera librerías binarias para cada arquitectura de procesador que se pueden invocar desde Java por medio de JNI (Java Native Interface).
c) Se recomienda su uso con aplicaciones intensivas a nivel computacional, como juegos o simulaciones físicas.
d) No permite la reutilización de código, no pudiendo usar bibliotecas de otros desarrolladores.
D
No permite la reutilización de código, no pudiendo usar bibliotecas de otros desarrolladores.
¿Cuál de los siguientes archivos es esencial para configurar los módulos y dependencias de una aplicación Android en Gradle?
a) AndroidManifest.xml
b) settings.gradle
c) build.gradle
d) proguard-rules.pro
C
build.gradle
El archivo build.gradle define las dependencias, configuraciones de compilación, y plugins de la aplicación o módulo. Existe uno a nivel de proyecto y otro para cada módulo.
¿Cuál es el propósito principal del Android Runtime (ART) en las aplicaciones Android modernas?
a) Compilar código Java en tiempo de ejecución.
b) Proveer una capa de abstracción para gestionar llamadas nativas.
c) Ejecutar las aplicaciones Android mediante una compilación previa (AOT, Ahead-Of-Time).
d) Administrar los permisos de las aplicaciones instaladas.
C
Ejecutar las aplicaciones Android mediante una compilación previa (AOT, Ahead-Of-Time).
Android Runtime (ART) reemplazó a Dalvik en versiones modernas de Android y utiliza compilación AOT, lo que mejora el rendimiento y reduce el consumo de batería.
¿Qué clase en Android se utiliza para crear un servicio en segundo plano que no necesita interactuar con la interfaz de usuario?
a) IntentService
b) AsyncTask
c) Service
d) JobScheduler
C
Service
La clase Service se utiliza para ejecutar tareas en segundo plano sin necesidad de interacción con la interfaz de usuario. Si se requiere manejar múltiples tareas, IntentService sería una opción complementaria.
¿Cuál es la principal ventaja de usar ViewBinding en lugar de findViewById() en Android?
a) Permite generar vistas de forma dinámica.
b) Incrementa el rendimiento al compilar las vistas en tiempo de ejecución.
c) Elimina la necesidad de realizar castings y previene errores de tipo en tiempo de compilación.
d) Proporciona un manejo avanzado de animaciones.
C
Elimina la necesidad de realizar castings y previene errores de tipo en tiempo de compilación.
ViewBinding genera clases seguras para cada layout, permitiendo acceder directamente a las vistas sin necesidad de findViewById(), lo que reduce errores.
¿Qué tipo de archivo se genera al compilar un proyecto Android y está listo para instalar en un dispositivo o publicarse en la Play Store?
a) .apk
b) .dex
c) .aab
d) .jar
A
.apk
El Android Package (APK) es el archivo empaquetado que contiene todos los recursos y código de una aplicación, listo para instalar en dispositivos Android. Sin embargo, en versiones más recientes, .aab (Android App Bundle) se utiliza para optimizar la distribución en la Play Store.
¿Cuál es el propósito de un archivo ProGuard en una aplicación Android?
a) Incrementar el rendimiento de las aplicaciones en tiempo de ejecución.
b) Reducir el tamaño del APK y ofuscar el código para protegerlo.
c) Optimizar las vistas y mejorar la renderización en la interfaz gráfica.
d) Configurar los permisos que requiere la aplicación en Android.
B
Reducir el tamaño del APK y ofuscar el código para protegerlo.
ProGuard optimiza, ofusca y elimina código no utilizado para reducir el tamaño del APK y dificultar la ingeniería inversa del código.
¿Qué es .NET MAUI?
a) .NET MAUI es un marco multiplataforma para crear aplicaciones móviles y de escritorio nativas con C# y XAML.
b) Es una plataforma para desarrollar aplicaciones en Java.
c) Es una herramienta de pruebas automatizadas.
d) Es una plataforma para desarrollar aplicaciones móviles que se puede ejecutar en sistema Android solamente.
A
.NET MAUI es un marco multiplataforma para crear aplicaciones móviles y de escritorio nativas con C# y XAML.
La clave de la distinción es que .NET MAUI, a diferencia de otros frameworks como React Native, Flutter e Ionic, realmente genera interfaces de usuario nativas en lugar de depender de un WebView. Esto le permite ofrecer un rendimiento y una experiencia de usuario más cercanos a lo que se esperaría de una aplicación desarrollada de forma nativa.
¿Cuál de las siguientes opciones describe correctamente a Entity Framework Core?
a) Es un ORM (Mapeo Objeto-Relacional) de código abierto para .NET.
b) Es una herramienta para crear interfaces gráficas de usuario en WPF.
c) Es un framework utilizado exclusivamente para pruebas unitarias.
d) Es una extensión de Visual Studio para la depuración de aplicaciones.
A
Es un ORM (Mapeo Objeto-Relacional) de código abierto para .NET.
¿Cuál es el propósito principal de ASP.NET Core?
a) Crear aplicaciones móviles multiplataforma.
b) Desarrollar aplicaciones web modernas, rápidas y multiplataforma.
c) Ejecutar aplicaciones .NET exclusivamente en Windows.
d) Ofrecer un IDE para el desarrollo de aplicaciones en .NET.
D
Ofrecer un IDE para el desarrollo de aplicaciones en .NET.
¿Cuál de las siguientes tecnologías permite realizar inyección de dependencias en aplicaciones .NET?
a) LINQ.
b) ASP.NET Core.
c) .NET MAUI.
d) Razor Pages.
B
ASP.NET Core.
¿Qué es XAML en el contexto del desarrollo con .NET?
a) Un lenguaje de programación orientado a objetos.
b) Un lenguaje para definir interfaces de usuario.
c) Un framework para acceso a bases de datos en .NET.
d) Una extensión de Visual Studio.
B
Un lenguaje para definir interfaces de usuario.
¿Qué es Blazor en el ecosistema .NET?
a) Una biblioteca para realizar consultas a bases de datos.
b) Un framework que permite desarrollar aplicaciones web con C# en lugar de JavaScript.
c) Un sistema de compilación para aplicaciones .NET.
d) Una herramienta para optimizar la ejecución de aplicaciones en la nube.
B
Un framework que permite desarrollar aplicaciones web con C# en lugar de JavaScript.
Señale la respuesta correcta:
a) Xcode es un IDE que contiene herramientas destinadas exclusivamente al desarrollo software para iOS.
b) Xcode Cloud no existe.
c) SwiftUI es un framework que facilita la creación de aplicaciones para cualquier dispositivo Apple.
d) iOS SDK permite el desarrollo de aplicaciones para macOS, iOS, watchOS y tvOS.
C
SwiftUI es un framework que facilita la creación de aplicaciones para cualquier dispositivo Apple.
¿Cuál de las siguientes afirmaciones sobre App Store Connect es correcta?
a) App Store Connect solo está disponible para desarrolladores de aplicaciones iOS.
b) App Store Connect es una herramienta que permite gestionar la distribución y monetización de aplicaciones para todas las plataformas Apple.
c) App Store Connect está diseñado únicamente para aplicaciones distribuidas a través de la App Store de macOS.
d) App Store Connect no tiene capacidad para administrar las suscripciones de los usuarios.
B
App Store Connect es una herramienta que permite gestionar la distribución y monetización de aplicaciones para todas las plataformas Apple.
¿Qué significa “ARC” en el contexto de la programación en Swift?
a) Auto-Reference Control.
b) Automatic Reference Counting.
c) Automatic Resource Collection.
d) Active Resource Control.
B
Automatic Reference Counting.
¿Qué es el “Simulator” en Xcode?
a) Una herramienta que permite probar aplicaciones iOS en dispositivos físicos.
b) Un emulador de dispositivos Apple que permite simular y probar aplicaciones en diferentes versiones de iOS, watchOS y tvOS sin necesidad de hardware físico.
c) Un entorno exclusivo para el desarrollo de aplicaciones iOS.
d) Un generador de código para aplicaciones de terceros.
B
Un emulador de dispositivos Apple que permite simular y probar aplicaciones en diferentes versiones de iOS, watchOS y tvOS sin necesidad de hardware físico.
¿Qué framework de Apple se utiliza para desarrollar interfaces de usuario adaptativas para dispositivos con pantallas pequeñas, como el Apple Watch?
a) UIKit.
b) WatchKit.
c) CoreGraphics.
d) SwiftUI.
B
WatchKit
¿Cuál es el propósito de “Core Data” en el ecosistema Apple?
a) Gestionar la persistencia de datos en una base de datos local.
b) Implementar la comunicación en tiempo real entre dispositivos.
c) Crear interfaces de usuario dinámicas.
d) Gestionar las interacciones con servicios web externos.
A
Gestionar la persistencia de datos en una base de datos local.
¿Qué tecnología de las siguientes es adecuada para implementar la recepción de notificaciones nativas en los teléfonos inteligentes del representante y del interesado?
a) WebView
b) Mobile push
c) CDMA
d) Wi-Fi
B
Mobile push
¿Qué tecnología se utiliza para permitir la comunicación en tiempo real entre aplicaciones móviles y servidores sin necesidad de que el usuario abra la aplicación?
a) Bluetooth
b) NFC
c) WebSockets
d) GPS
C
WebSockets
¿Qué tecnología se utiliza para proporcionar un sistema de localización en tiempo real en aplicaciones móviles?
a) NFC
b) GPS
c) 5G
d) Bluetooth
B
GPS
¿Cuál es la tecnología que permite la transmisión de datos a corta distancia mediante el contacto físico de dispositivos móviles?
a) 5G
b) Bluetooth
c) NFC
d) Wi-Fi
C
NFC
¿Qué protocolo se utiliza en la mayoría de las aplicaciones móviles para enviar mensajes o notificaciones de texto de forma asincrónica?
a) HTTP/2
b) SMS
c) SMTP
d) FTP
B
SMS
¿Qué protocolo es utilizado por los servidores de notificaciones push para enviar mensajes a aplicaciones móviles, incluso cuando estas no están en primer plano?
a) XMPP
b) MQTT
c) HTTP/2
d) FCM (Firebase Cloud Messaging)
D
FCM (Firebase Cloud Messaging)
En PHP, señale qué variable de entorno se puede usar para almacenar datos del inicio de sesión de un usuario:
a) $_SESSION
b) $SESSION
c) $_GLOBAL
d) $GLOBAL
A
$_SESSION
En PHP, ¿cuál es la superglobal utilizada para acceder a los valores enviados a través de un formulario mediante el método POST?
a) $_POST
b) $POST
c) $_REQUEST
d) $FORM
A
$_POST
En PHP, ¿qué superglobal se usa para recoger las variables que se pasan a través de la URL (por ejemplo, parámetros de consulta)?
a) $_POST
b) $_COOKIE
c) $_GET
d) $_SESSION
C
$_GET
En PHP, ¿qué variable superglobal se utiliza para almacenar información sobre las cabeceras HTTP de la solicitud?
a) $_REQUEST
b) $_FILES
c) $_SERVER
d) $_ENV
C
$_SERVER
¿Qué función en PHP se utiliza para destruir todos los datos almacenados en una sesión?
a) session_start()
b) session_unset()
c) session_destroy()
d) session_clear()
C
session_destroy()
En PHP, ¿qué superglobal se usa para acceder a las cookies enviadas por el navegador?
a) $_FILES
b) $_COOKIE
c) $_SESSION
d) $_REQUEST
B
$_COOKIE
En relación con el desarrollo de aplicaciones móviles, señale la respuesta correcta:
a) Una aplicación híbrida está enfocada a distribuirse de manera fácil y no requiere ser instalada en los dispositivos.
b) Una aplicación nativa responde a la necesidad de ejecutarse en varias plataformas, acceder a las APIs (Application Programming Interfaces) nativas del dispositivo y es adecuada para funcionalidades simples.
c) Una aplicación nativa permite alto rendimiento a nivel gráfico y acceder a características
avanzadas del hardware.
d) Una aplicación PWA (Progressive web app) se distribuye e instala en los dispositivos a través de las App Stores.
C
Una aplicación nativa permite alto rendimiento a nivel gráfico y acceder a características
avanzadas del hardware.
¿Cuál de las siguientes opciones es una ventaja de usar un framework multiplataforma como Xamarin o Flutter?
a) Permite escribir una única base de código para varias plataformas.
b) Solo funciona en dispositivos Android.
c) No permite acceder a las APIs nativas del dispositivo.
d) Obliga a desarrollar aplicaciones exclusivamente en C++.
A
Permite escribir una única base de código para varias plataformas.
¿Qué característica diferencia a una Progressive Web App (PWA) de una aplicación nativa?
a) Una PWA se instala a través de una App Store.
b) Una PWA puede funcionar sin conexión a internet utilizando Service Workers.
c) Una aplicación nativa no tiene acceso a las APIs del sistema operativo.
d) Una PWA no puede ejecutarse en navegadores web.
B
Una PWA puede funcionar sin conexión a internet utilizando Service Workers.
¿Cuál de los siguientes lenguajes es utilizado en el desarrollo de aplicaciones móviles con Xamarin?
a) Java
b) C#
c) Kotlin
d) Swift
B
C#
En el desarrollo de aplicaciones móviles, ¿qué función cumple un WebView?
a) Ejecutar código nativo directamente en una aplicación híbrida.
b) Integrar contenido web dentro de una aplicación móvil.
c) Mejorar el rendimiento gráfico de las aplicaciones nativas.
d) Optimizar el consumo de batería en dispositivos móviles.
B
Integrar contenido web dentro de una aplicación móvil.
Cuál de las siguientes tecnologías se usa para la comunicación en tiempo real en aplicaciones móviles y web?
a) REST API
b) GraphQL
c) SignalR
d) JSON
C
SignalR
Señale la combinación de lenguajes y tecnologías que NO resultaría adecuada para desarrollar una aplicación iOS:
a) Dart con Flutter.
b) Kotlin con Kotlin Multiplatform.
c) C# con .NET MAUI.
d) Go con AppleGo.
D
Go con AppleGo.
¿Cuál de las siguientes tecnologías NO es adecuada para desarrollar aplicaciones móviles nativas?
a) Swift con SwiftUI
b) Kotlin con Jetpack Compose
c) HTML, CSS y JavaScript con WebView
d) C# con .NET MAUI
C
HTML, CSS y JavaScript con WebView
¿Qué framework permite desarrollar aplicaciones móviles multiplataforma usando JavaScript o TypeScript?
a) Flutter
b) Xamarin
c) React Native
d) SwiftUI
C
React Native
¿Cuál de las siguientes opciones describe mejor la diferencia entre Flutter y Xamarin?
a) Flutter usa Dart, mientras que Xamarin usa C#.
b) Xamarin solo funciona en dispositivos Android.
c) Flutter no permite acceder a las APIs nativas del dispositivo.
d) Xamarin es exclusivo de Apple y no se puede usar en Windows.
A
Flutter usa Dart, mientras que Xamarin usa C#.
¿Qué herramienta de Apple se usa para desarrollar interfaces gráficas en aplicaciones iOS?
a) Jetpack Compose
b) UIKit
c) WebView
d) Electron
B
UIKit