wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

Examen Final de Programación

Total questions: 20

Worksheet time: 10mins

Name
Class
Date
1.

Una startup de IA está desarrollando un sistema para gestionar modelos de machine learning. Necesitan modelar la relación entre 'Científico de Datos' y 'Modelo ML', donde un científico puede entrenar muchos modelos, pero un modelo es entrenado por un único científico. Adicionalmente, se debe registrar la fecha y versión del entrenamiento. ¿Qué tipo de modelado de base de datos es el más adecuado para registrar el historial de versiones de cada modelo sin perder los datos anteriores?

a)

Modelado de datos tipo arco.

b)

Modelado histórico.

c)

Modelado de datos tipo jerarquías.

d)

Modelado recursivo.

e)

Modelado de supertipos y subtipos.

2.

Una empresa de ciberseguridad está construyendo una base de datos para registrar incidentes. Necesitan una consulta que liste todos los incidentes reportados en el último mes, ordenados del más reciente al más antiguo. La tabla 'INCIDENTS' tiene las columnas 'description' y 'report_date'. ¿Qué cláusulas SQL son indispensables para esta tarea?

a)

SELECT, FROM, GROUP BY

b)

SELECT, FROM, WHERE, ORDER BY

c)

SELECT, WHERE, HAVING

d)

SELECT, FROM, ORDER BY, LIMIT

e)

UPDATE, SET, WHERE

3.

En un sistema de e-commerce que usa machine learning para recomendar productos, la tabla 'PRODUCTS' tiene una columna 'price' de tipo NUMBER y una columna 'last_updated' de tipo TIMESTAMP. Para un reporte, necesitas mostrar el precio formateado como moneda ('$99.99') y la fecha de actualización en formato 'DD-Mon-YYYY'. ¿Qué funciones de Oracle son las más adecuadas para esta transformación?

a)

TO_NUMBER para el precio y TO_DATE para la fecha.

b)

TO_CHAR para el precio y TO_CHAR para la fecha.

c)

CAST para el precio y EXTRACT para la fecha.

d)

CONVERT para ambos.

e)

ROUND para el precio y TRUNC para la fecha.

4.

Una plataforma de streaming de música necesita identificar qué artistas no tienen ninguna canción registrada en la tabla 'SONGS'. Se tienen dos tablas: 'ARTISTS' (con artist_id) y 'SONGS' (con artist_id). ¿Qué tipo de consulta SQL es la más eficiente para obtener la lista de artistas sin canciones?

a)

Una subconsulta correlacionada con COUNT.

b)

Un INNER JOIN entre 'ARTISTS' y 'SONGS'.

c)

Un LEFT JOIN con una cláusula WHERE para buscar valores NULL.

d)

Un CROSS JOIN entre ambas tablas.

e)

Un NATURAL JOIN entre ambas tablas.

5.

Una fintech está analizando transacciones para detectar fraudes. Necesitan un reporte que muestre el total de transacciones y el monto total por cada ciudad, pero únicamente para las ciudades que tuvieron más de 100 transacciones. ¿Qué cláusulas de agrupación y filtrado se deben usar?

a)

GROUP BY para agrupar por ciudad y WHERE para filtrar por el conteo de transacciones.

b)

GROUP BY para agrupar por ciudad y HAVING para filtrar por el conteo de transacciones.

c)

ROLLUP para agrupar y WHERE para filtrar.

d)

PARTITION BY para agrupar y HAVING para filtrar.

e)

GROUP BY y CUBE, sin necesidad de filtrado.

6.

Un desarrollador está creando una aplicación Java con Swing para una clínica. Al diseñar un formulario de registro de pacientes, necesita un componente que le permita al usuario seleccionar su tipo de seguro de una lista predefinida de opciones (ej. 'Privado', 'Público', 'Empresarial'). ¿Qué componente de Swing es el más adecuado para esta funcionalidad?

a)

JTextField

b)

JTextArea

c)

JComboBox

d)

JCheckBox

e)

JLabel

7.

Un equipo de DevOps está automatizando la creación de un esquema de base de datos en Oracle para un nuevo microservicio. El script debe definir una tabla USERS con una columna user_id que sea única para cada fila y nunca nula, y una columna status que solo pueda aceptar los valores 'active', 'inactive' o 'pending'. ¿Qué restricciones (constraints) de Oracle deben aplicar?

a)

PRIMARY KEY en user_id.

b)

UNIQUE en user_id.

c)

CHECK en status.

d)

FOREIGN KEY en status.

e)

DEFAULT en status.

8.

En el desarrollo de una aplicación Java para gestionar un inventario en la nube, se necesita una clase para representar un 'Producto'. Esta clase debe encapsular sus datos (ID, nombre, precio) para que no puedan ser modificados directamente desde fuera, y solo se pueda acceder a ellos a través de métodos. ¿Qué conceptos de Programación Orientada a Objetos (POO) son clave para implementar esto correctamente?

a)

Declarar los atributos como private.

b)

Crear métodos public getters y setters.

c)

Usar herencia (extends).

d)

Implementar un constructor.

e)

Declarar la clase como static.

9.

Un desarrollador está escribiendo un programa en Java que se conectará a una base de datos Oracle usando JDBC. El proceso implica varios pasos que pueden fallar (ej. el driver no se encuentra, la base de datos está caída, la consulta es inválida). ¿Qué construcciones del lenguaje Java son esenciales para manejar estos posibles errores de forma robusta y asegurar que la conexión se cierre siempre?

a)

Un bucle for-each.

b)

Un bloque try-catch.

c)

Una sentencia switch.

d)

Un bloque finally.

e)

La palabra clave throws en la firma del método.

10.

Se está diseñando una interfaz gráfica con Java Swing para una aplicación de análisis de datos. La ventana principal debe tener un área para mostrar gráficos, una tabla para los datos brutos y una barra de menú en la parte superior. ¿Qué componentes de Swing serían los indicados para estructurar estos elementos?

a)

Un JFrame como ventana principal.

b)

Un JMenuBar para el menú superior.

c)

Un JPanel para organizar los gráficos y la tabla.

d)

Un JButton para la tabla de datos.

e)

Un JDialog como ventana principal.

11.

Un desarrollador está implementando la capa de acceso a datos (DAO) para una aplicación Java que interactúa con una base de datos Oracle. ¿Qué clases de la librería JDBC son fundamentales para realizar una consulta SELECT y procesar los resultados?

a)

La clase DriverManager.

b)

La clase Connection.

c)

La clase Statement o PreparedStatement.

d)

La clase ResultSet.

e)

La clase JDBCType.

12.

Una aplicación de Big Data necesita generar un informe complejo desde una base de datos Oracle. El informe debe mostrar el total de ventas por (Año, Región, Producto), los subtotales por (Año, Región), el subtotal por (Año) y un total general. ¿Qué extensiones de la cláusula GROUP BY de Oracle permiten generar estos subtotales jerárquicos en una sola consulta?

a)

ROLLUP(Año, Región, Producto)

b)

CUBE(Año, Región, Producto)

c)

HAVING SUM(ventas) > 0

d)

GROUPING SETS((Año, Región, Producto), (Año, Región), (Año), ())

e)

PARTITION BY Año, Región, Producto

13.

En el contexto de la POO en Java, se está diseñando una clase Vehiculo y dos clases derivadas, Coche y Motocicleta. Se quiere que todos los vehículos tengan un método acelerar(), pero cada uno lo implementará de forma diferente. Además, se quiere poder tratar a un objeto Coche como si fuera un Vehiculo. ¿Qué conceptos de POO se están aplicando?

a)

Herencia.

b)

Polimorfismo.

c)

Encapsulación.

d)

Sobrecarga de métodos (Overloading).

e)

Abstracción.

14.

Un sistema de gestión de bases de datos necesita ejecutar una serie de operaciones DML (INSERT, UPDATE) como una única unidad de trabajo atómica. Si alguna de las operaciones falla, todas las anteriores deben revertirse para no dejar la base de datos en un estado inconsistente. ¿Qué comandos del Lenguaje de Control de Transacciones (TCL) se utilizan para gestionar este proceso?

a)

COMMIT

b)

ROLLBACK

c)

GRANT

d)

SAVEPOINT

e)

TRUNCATE

15.

En el diseño de una base de datos para una plataforma IoT, la tabla DEVICES se relaciona consigo misma para modelar una estructura de 'gateways' y 'sensores', donde un gateway es también un dispositivo que puede tener muchos sensores asociados. Este tipo de relación se conoce como una relación __________.

a)

binaria

b)

recursiva

c)

ternaria

d)

excluyente

e)

normalizada

16.

Para obtener el nombre del empleado y el nombre del departamento al que pertenece, se necesita combinar las tablas EMPLOYEES y DEPARTMENTS basándose en la columna department_id. La consulta SELECT e.name, d.name FROM employees e __________ departments d ON e.department_id = d.id; utiliza un __________ para lograrlo.

a)

LEFT JOIN

b)

CROSS JOIN

c)

INNER JOIN

d)

NATURAL JOIN

e)

SELF JOIN

17.

Una aplicación Java necesita ejecutar una consulta parametrizada para prevenir ataques de inyección SQL. En lugar de usar la clase Statement, se debe utilizar la clase __________ de JDBC, que precompila la sentencia SQL y permite establecer los parámetros de forma segura usando placeholders como ?.

a)

DriverManager

b)

Connection

c)

ResultSet

d)

PreparedStatement

e)

SQLWarning

18.

En un programa Java, se necesita una colección de objetos 'Cliente' cuyo tamaño pueda crecer dinámicamente a medida que se agregan nuevos clientes. A diferencia de un array normal, que tiene un tamaño fijo, la clase __________ del paquete java.util es la solución ideal para esta necesidad.

a)

Math

b)

String

c)

ArrayList

d)

Scanner

e)

Object

19.

Para crear una aplicación de escritorio simple en Java, la ventana principal se crea usando la clase __________. Dentro de esta ventana, se pueden añadir paneles usando __________ para organizar componentes como botones (JButton) y etiquetas (JLabel).

a)

JFrame / JPanel

b)

JDialog / JFrame

c)

JPanel / JFrame

d)

Applet / Container

e)

JFrame / JComponent

20.

El ciclo de vida de una transacción en una base de datos Oracle finaliza con dos comandos principales del TCL. Si todas las operaciones DML fueron exitosas, se utiliza __________ para hacer los cambios permanentes. Si ocurre un error, se utiliza __________ para deshacer todos los cambios.

a)

SAVEPOINT / COMMIT

b)

COMMIT / ROLLBACK

c)

ROLLBACK / COMMIT

d)

INSERT / DELETE

e)

GRANT / REVOKE