TAICord TAICord

Quizzes Píldoras Unirse al servidor Login con Discord
← Volver

b3 y a la cama 2 3

Por xd4z
Récord
🏆 6.6
Media
📊 6.54
Sesiones
2
#PreguntaOpcionesTiempo
1 En el modelo E/R, el grado de una relación indica:
✓ El número de tipos de entidades que participan en ella
El total de atributos definidos en la relación, incluidas las claves propagadas de las entidades participantes
El número máximo de ocurrencias que cada entidad puede tener en la correspondencia establecida
El número de tuplas que genera el producto cartesiano entre las entidades implicadas en la relación
30s
2 Para que una relación esté en 3FN debe cumplir:
Que no existan dependencias multivaluadas no triviales entre los atributos de la relación
✓ Estar en 2FN y que ningún atributo no clave dependa transitivamente de otro atributo no clave
Que los únicos determinantes funcionales posibles sean las claves candidatas de la relación
Que cada atributo de la tupla contenga a lo sumo un valor atómico, sin grupos repetitivos
30s
3 Al transformar una relación 1:N del modelo E/R al modelo relacional:
Se fusionan ambas entidades en una sola tabla que contiene todos los atributos de ambas entidades originales
Se crea una tabla intermedia cuya clave primaria es la composición de las claves de ambas entidades
✓ Se propaga la clave de la entidad del lado 1 como clave ajena en la entidad del lado N
Se elimina la entidad del lado N y sus atributos se incorporan como columnas en la entidad del lado 1
30s
4 La Regla 12 de Codd (no subversión) establece que:
Todas las vistas del sistema deben ser actualizables con las mismas sentencias DML que las tablas base
Las restricciones de integridad deben almacenarse en el diccionario de datos del SGBD y nunca en las aplicaciones
El catálogo dinámico del sistema debe almacenarse en tablas relacionales accesibles con el lenguaje de consulta
✓ Si el SGBD ofrece un lenguaje de bajo nivel, este no puede eludir las reglas de integridad y seguridad
30s
5 En SQL, un trigger BEFORE permite:
✓ Validar o modificar los valores entrantes antes de que la sentencia DML modifique los datos en la tabla
Ejecutar el cuerpo del trigger una vez completada la operación DML, cuando los datos ya han sido modificados
Sustituir la sentencia DML disparadora por el código del cuerpo del trigger, anulando su efecto original
Replicar los datos modificados en una tabla espejo de forma asíncrona tras confirmar la transacción
30s
6 La sentencia MERGE de SQL combina en una sola operación:
La creación de un índice y la reorganización de la tabla para optimizar su rendimiento de consulta
✓ Inserción y actualización de registros de una tabla origen sobre una tabla destino según condición de coincidencia
La definición de una vista materializada y su actualización periódica a partir de las tablas base subyacentes
El borrado masivo de registros y la reconstrucción de las restricciones de clave primaria de la tabla
30s
7 En SQL, el CROSS JOIN entre dos tablas produce:
Solo las filas que cumplen la condición de igualdad definida en la cláusula ON de la unión
Todas las filas de la tabla izquierda, completando con nulos las columnas de la tabla derecha sin correspondencia
✓ El producto cartesiano completo entre ambas tablas
Las filas comunes a ambas tablas basándose en los nombres de columna compartidos
30s
8 El uso de PreparedStatement en JDBC previene inyección SQL porque:
Limita automáticamente el número máximo de filas devueltas por consulta a un valor configurable
Ejecuta cada sentencia SQL en una transacción aislada con nivel SERIALIZABLE por defecto
Cifra los parámetros de la consulta con el algoritmo AES antes de enviarlos al motor de base de datos
✓ Separa la estructura de la consulta de los datos de los parámetros, impidiendo que estos alteren la lógica SQL
30s
9 En SQL, un cursor sirve para:
✓ Recorrer fila a fila el resultado de una consulta dentro de un procedimiento almacenado
Definir permisos de acceso granulares a nivel de columna sobre las tablas de un esquema relacional
Crear índices parciales que cubren solo las filas que cumplen un predicado determinado de filtrado
Ejecutar sentencias DDL de forma transaccional con soporte para rollback sobre CREATE y ALTER
30s
10 Los procedimientos almacenados de SQL se diferencian de las funciones en que:
Las funciones permiten utilizar transacciones explícitas con COMMIT y ROLLBACK, mientras que los procedimientos no
✓ Los procedimientos admiten parámetros IN, OUT e INOUT pero no retornan un valor directamente, a diferencia de las funciones
Los procedimientos solo pueden ejecutar sentencias SELECT de lectura, mientras que las funciones admiten cualquier sentencia DML
Las funciones se ejecutan siempre en el cliente, mientras que los procedimientos se ejecutan exclusivamente en el servidor de BD
30s
11 El patrón Composite del catálogo GoF permite:
Registrar observadores que reciben notificaciones automáticas cuando cambia el estado de un sujeto
Interceptar las llamadas a un objeto real mediante un representante que añade lógica de control de acceso
✓ Construir estructuras recursivas donde objetos simples y compuestos se tratan de forma uniforme
Crear una interfaz simplificada que centraliza el acceso a un conjunto de clases de un subsistema
30s
12 El patrón Flyweight tiene como objetivo principal:
Definir el esqueleto de un algoritmo en una clase base, delegando pasos concretos a las subclases
Convertir los estados del ciclo de vida de un objeto en clases independientes con su propia lógica
Guardar instantáneas del estado de un objeto para restaurarlo posteriormente y poder deshacer operaciones
✓ Reducir el consumo de memoria compartiendo objetos comunes entre múltiples contextos
30s
13 El patrón Command transforma:
✓ Los métodos de una clase en objetos independientes, facilitando extensión, deshacer y registro de acciones
Los atributos de una clase en propiedades observables que notifican a sus suscriptores ante cambios de valor
Las colecciones heterogéneas en iteradores homogéneos que permiten recorrido uniforme sin exponer estructura
Las relaciones de herencia en composiciones dinámicas que se resuelven mediante inyección de dependencias
30s
14 El principio Open/Closed de SOLID establece que las entidades de software deben estar:
Abiertas a la modificación directa del código fuente y cerradas a cualquier forma de extensión por herencia
✓ Abiertas a la extensión mediante herencia o composición, pero cerradas a la modificación del código existente
Abiertas exclusivamente a la refactorización interna y cerradas a la adición de nuevas funcionalidades externas
Abiertas a la eliminación de métodos obsoletos y cerradas a la incorporación de dependencias de terceros
30s
15 En UML, el diagrama de máquina de estados modela:
Las interacciones cronológicas entre objetos durante un escenario de ejecución determinado
La arquitectura de despliegue del sistema, indicando nodos hardware y artefactos software desplegados
✓ Los estados por los que transita un objeto de una clase concreta y los eventos que provocan cada transición
Las dependencias funcionales entre los paquetes que componen la estructura modular del sistema
30s
16 En UML, los diagramas de secuencia y comunicación representan el mismo tipo de información pero se diferencian en que:
El de secuencia solo admite actores humanos, mientras que el de comunicación acepta cualquier tipo de actor
El de comunicación se utiliza exclusivamente para modelar casos de uso, mientras que el de secuencia modela clases
El de secuencia utiliza únicamente selectores CSS para identificar los objetos participantes en la interacción
✓ El de secuencia muestra el orden temporal en un eje vertical, mientras que el de comunicación muestra los enlaces entre objetos con mensajes numerados
30s
17 En UML, la composición se diferencia de la agregación en que:
✓ En la composición las partes no pueden existir sin el todo, mientras que en la agregación sí
La composición usa rombo vacío y la agregación rombo relleno, representando ambas contención lógica
En la agregación las partes se destruyen al eliminar el contenedor, mientras que en la composición sobreviven
Ambas son equivalentes y la elección entre una u otra depende exclusivamente de la preferencia del analista
30s
18 La ligadura dinámica (late binding) implica que:
Los tipos de datos de todas las variables deben declararse explícitamente en tiempo de compilación sin excepciones
✓ El método concreto a ejecutar se determina en tiempo de ejecución según el tipo real del objeto
Los objetos se enlazan a sus clases mediante ficheros de configuración XML que el framework procesa al arrancar
Todos los métodos de la jerarquía se resuelven en tiempo de compilación para maximizar el rendimiento
30s
19 En UML, la relación <<extend>> entre casos de uso indica:
Un fragmento de comportamiento obligatorio que debe ejecutarse siempre que se invoque el caso de uso base
Una relación de herencia entre dos actores del sistema que comparten las mismas interacciones funcionales
✓ Un comportamiento opcional que se incorpora al caso de uso base únicamente cuando se cumple una condición
Una dependencia de compilación entre los paquetes que contienen los diagramas de los casos de uso
30s
20 En Java, la clase HashMap permite:
✓ Almacenar pares clave-valor con claves y valores nulos, sin sincronización
Almacenar pares clave-valor sin admitir nulos y con sincronización nativa garantizada por la JVM
Mantener los elementos ordenados por la clave de forma ascendente mediante un árbol rojo-negro interno
Funcionar exclusivamente como una pila LIFO con los métodos push() y pop() heredados de Stack
30s
21 Las excepciones checked de Java heredan de:
RuntimeException, permitiendo que el compilador no obligue a manejarlas explícitamente
La clase Error, representando fallos graves del sistema como OutOfMemoryError o StackOverflowError
✓ Exception (pero no de RuntimeException), obligando a try/catch o throws
La interfaz Serializable, que permite transmitirlas por red entre JVMs distribuidas
30s
22 En Java, el modificador transient aplicado a un atributo indica que:
Su valor se lee siempre desde la memoria principal, evitando inconsistencias entre las cachés de hilos
✓ El atributo se excluye del proceso de serialización al persistir o transmitir el objeto
Solo un hilo puede acceder simultáneamente al atributo, garantizando exclusión mutua en concurrencia
El atributo actúa como constante cuyo valor no puede modificarse una vez inicializado
30s
23 La anotación @Override de Java sirve para:
Declarar un método como estático, permitiendo su invocación sin instanciar la clase que lo contiene
Marcar un método como obsoleto, generando advertencias de compilación en el código que lo utilice
✓ Indicar al compilador que el método sobrescribe uno de la superclase, generando error si no existe
Restringir la visibilidad del método al paquete donde se define la clase contenedora
30s
24 En Maven, el fichero pom.xml define:
El bytecode compilado de las clases del proyecto, listo para ejecución en la JVM del servidor
Las sentencias SQL necesarias para crear las tablas del modelo de datos en el gestor de base de datos
Los resultados de las pruebas unitarias ejecutadas durante el último ciclo de integración continua
✓ La configuración del proyecto, sus dependencias, plugins y las coordenadas del artefacto
30s
25 En Java, una expresión lambda implementa:
✓ De forma concisa una interfaz funcional, evitando clases anónimas
Un constructor alternativo que se invoca cuando el principal lanza una excepción en tiempo de ejecución
Una sentencia SQL embebida que se ejecuta directamente contra la base de datos sin necesidad de JDBC
Un módulo del sistema de módulos de Java 9 que exporta sus paquetes públicos a otros módulos
30s
26 En JEE, el servicio JTA proporciona:
Un directorio LDAP compatible para registrar y localizar objetos del servidor de aplicaciones mediante lookup
✓ Gestión de transacciones con soporte para commit, rollback y two-phase commit en entornos distribuidos
Un sistema de inyección de dependencias que resuelve automáticamente las referencias entre beans del contenedor
Un motor de plantillas para la generación de vistas HTML a partir de datos del modelo de negocio
30s
27 En JPA, la anotación @Entity indica que:
La clase es un Servlet que atiende peticiones HTTP en el Web Container del servidor de aplicaciones Jakarta EE
La clase es un filtro que intercepta las peticiones HTTP antes de que lleguen al controlador de la aplicación
✓ La clase está mapeada a una tabla de la base de datos y sus instancias representan filas
La clase es un EJB Message Driven Bean que consume mensajes asíncronos de una cola JMS
30s
28 En JPA, la estrategia FetchType.LAZY se diferencia de EAGER en que:
LAZY carga todas las entidades relacionadas de forma inmediata, consumiendo más memoria al recuperar la entidad
EAGER posterga la carga de las relaciones hasta que se acceda explícitamente a ellas para ahorrar recursos
LAZY requiere que la relación esté anotada con @Transient para funcionar correctamente en el contexto de persistencia
✓ LAZY posterga la carga de las relaciones hasta que se accede a ellas, mientras que EAGER las carga de inmediato
30s
29 En JEE, la tecnología JSTL permite:
✓ Sacar el código Java de las páginas JSP sustituyendo los scriptlets por etiquetas personalizadas
Persistir objetos de negocio en la base de datos relacional mediante anotaciones JPA estándar
Gestionar las transacciones distribuidas entre múltiples servidores de aplicaciones del clúster
Definir servicios web REST mediante anotaciones @Path y @GET en clases controlador
30s
30 En .NET, el CLS (Common Language Specification) define:
El conjunto de instrucciones del código intermedio CIL que genera cada compilador del ecosistema .NET
✓ Las reglas mínimas que un lenguaje debe cumplir para garantizar la interoperabilidad con otros lenguajes .NET
El repositorio centralizado de ensamblados compartidos del sistema operativo Windows, ubicado en el GAC
La estructura de tipos de datos compatibles incluyendo clases, interfaces, delegados y tipos por valor
30s
31 En .NET, Entity Framework permite:
Acceder a datos usando cursores conectados mediante objetos DataReader y sentencias SQL escritas manualmente
Gestionar certificados digitales y operaciones criptográficas necesarias para la firma de ensamblados
✓ Trabajar con objetos del dominio y generar el SQL automáticamente, sin que el programador escriba consultas directas
Compilar el código fuente C# a código intermedio CIL para su ejecución en el CLR
30s
32 En .NET, NuGet cumple una función equivalente a:
El compilador JIT que transforma CIL en código nativo del procesador en tiempo de ejecución
El depurador integrado de Visual Studio que permite inspeccionar variables y ejecutar paso a paso
El servidor web IIS que hospeda y ejecuta aplicaciones ASP.NET en entornos Windows Server
✓ La gestión de dependencias de Maven, descargando paquetes de librerías desde repositorios centrales
30s
33 En un WSDL, la sección binding especifica:
✓ Los protocolos de comunicación y el formato de codificación empleados para transmitir los mensajes
Las direcciones URL (endpoints) donde el servicio está disponible para su invocación remota
Los tipos de datos complejos definidos mediante XSD que utilizan los mensajes de las operaciones
La asociación lógica entre operaciones y sus respectivos mensajes de entrada y salida
30s
34 En REST, incluir verbos en las URI como /eliminarUsuario/5 se considera:
El método de diseño recomendado por el estándar REST para expresar acciones de escritura sobre recursos
✓ Una mala práctica, ya que las URI deben representar recursos y las acciones se expresan mediante los verbos HTTP
Una técnica necesaria cuando el servicio REST no implementa autenticación basada en tokens JWT
El único modo de especificar operaciones de borrado, ya que HTTP DELETE no es compatible con todos los servidores
30s
35 En HTML5, la etiqueta <article> representa:
Una zona de navegación que agrupa los enlaces del menú principal del sitio web
Contenido tangencial o complementario que complementa la información de la sección principal
✓ Contenido independiente y autocontenido que puede redistribuirse fuera del contexto de la página
Las etiquetas de metadatos y enlaces externos incluidas en la cabecera del documento HTML
30s
36 En HTML5, el elemento <svg> define gráficos vectoriales que:
Se dibujan mediante JavaScript píxel a píxel sobre un lienzo rasterizado que pierde calidad al escalar
Requieren obligatoriamente el plugin Flash para su visualización en los navegadores modernos
Generan imágenes bitmap de alta resolución optimizadas para impresión en papel, no para pantalla
✓ Se describen con marcado XML escalable sin pérdida de calidad, donde cada forma es un nodo del DOM
30s
37 En CSS, la pseudoclase :root se diferencia del selector html en que:
✓ Ambas seleccionan el elemento <html>, pero :root tiene mayor especificidad por ser pseudoclase
Solo :root puede usarse dentro de media queries, mientras que html no está permitido en dicho contexto
html selecciona el elemento raíz y además sus descendientes directos de primer nivel
:root selecciona únicamente el elemento <body>, excluyendo el <head> del ámbito de aplicación
30s
38 En CSS, el selector E[attr^='val'] selecciona elementos cuyo atributo:
Contiene la subcadena 'val' en cualquier posición del valor, ya sea al inicio, en medio o al final
✓ Comienza exactamente con la cadena 'val' al inicio del valor del atributo
Es exactamente igual a 'val', sin admitir coincidencias parciales ni subcadenas dentro del valor
Termina exactamente con la cadena 'val' al final del valor del atributo especificado
30s
39 En CSS Flexbox, la propiedad justify-content controla:
El tamaño máximo que puede alcanzar cada elemento hijo antes de desbordarse del contenedor flexible
El orden visual de los elementos, invirtiendo la secuencia definida en el HTML del documento
✓ La distribución de los elementos a lo largo del eje principal del contenedor flex
La alineación de los elementos en el eje secundario, perpendicular a la dirección del flujo flex
30s
40 En CSS Grid, la unidad fr representa:
Un tamaño fijo equivalente a una fracción de pulgada del dispositivo, similar a la unidad pt (puntos)
El valor de font-size del elemento raíz del documento, equivalente funcionalmente a la unidad rem
Un porcentaje del margen exterior del contenedor grid, calculado tras aplicar padding y border
✓ Una fracción del espacio disponible en el contenedor grid, repartida proporcionalmente entre las pistas
30s
41 Un documento XML se considera bien formado cuando:
✓ Tiene un único elemento raíz, etiquetas correctamente cerradas y anidadas, y atributos entrecomillados
Cumple las restricciones de estructura y tipos definidas en su gramática DTD o XSD asociada
Utiliza obligatoriamente espacios de nombres declarados con xmlns para todas sus etiquetas
Incluye una declaración DOCTYPE que enlaza con un fichero de gramática externo o interno
30s
42 En JAXB, el proceso de convertir un árbol de objetos Java a XML se denomina:
Unmarshalling, que lee el XML y levanta los objetos del dominio correspondientes en memoria
✓ Marshalling
Parsing, que analiza la estructura del documento XML validando su conformidad con la gramática XSD
Serialización binaria, que convierte el grafo de objetos en un flujo de bytes para transmisión por red
30s
43 En JSON, los valores booleanos y numéricos se escriben:
Entre comillas dobles, ya que JSON exige comillas para todos los tipos de valores sin excepción
Precedidos del prefijo # para indicar al parser que son valores primitivos y no cadenas de texto
✓ Sin comillas, ya que solo las cadenas de texto requieren entrecomillado
Entre comillas simples para distinguirlos visualmente de las cadenas que utilizan comillas dobles
30s
44 En JavaScript, la API Fetch devuelve:
Un objeto XMLHttpRequest configurado con los parámetros de la petición para su posterior envío manual
Un objeto síncrono que bloquea el hilo principal del navegador hasta obtener la respuesta completa del servidor
Un stream bidireccional WebSocket para comunicación persistente en tiempo real entre cliente y servidor
✓ Una promesa (Promise) que se resuelve con un objeto Response
30s
45 El operador ?? (nullish coalescing) de JavaScript devuelve el operando derecho cuando el izquierdo es:
✓ Null o undefined exclusivamente
Cualquier valor falsy, incluyendo 0, cadena vacía, false, null y undefined
Un valor de tipo string independientemente de su contenido, longitud o codificación
Un número negativo, cero o NaN, excluyendo los valores Infinity y -Infinity
30s
46 En PHP, el operador <=> (spaceship) devuelve:
true si ambos operandos son iguales en valor y tipo, y false en cualquier otro caso posible
La diferencia numérica absoluta entre ambos operandos, siempre como un valor positivo o cero
✓ -1, 0 o 1 según el operando izquierdo sea menor, igual o mayor que el derecho
El mayor de los dos operandos como resultado de la comparación, descartando siempre el menor
30s
47 Según las normas WAI, el estándar ATAG 2.0 define las pautas de accesibilidad para:
Los navegadores web, extensiones y tecnologías de asistencia que acceden al contenido publicado
El contenido web publicado en sitios y aplicaciones, estableciendo criterios de conformidad A, AA y AAA
Los sistemas de evaluación automática que verifican el cumplimiento de los criterios de accesibilidad
✓ Las herramientas de autor como editores HTML, CMS, blogs y wikis
30s
48 En Métrica 3, las interfaces que afectan transversalmente a todo el ciclo de desarrollo son:
PSI, EVS, ASI, DSI, CSI e IAS, que constituyen los procesos principales del desarrollo del sistema
Entrevistas, Reuniones, JAD y JRP, que son las técnicas de obtención y validación de requisitos
Product Backlog, Sprint Planning, Daily Scrum, Sprint Review y Sprint Retrospective
✓ Aseguramiento de Calidad, Gestión de Proyectos, Gestión de Configuración y Seguridad
30s
49 En Git, el comando git commit --amend permite:
✓ Acumular cambios sobre el último commit sin generar un nuevo commit en el historial
Crear una rama nueva a partir del commit actual y posicionarse automáticamente en ella
Revertir los cambios del último commit generando un nuevo commit con el efecto inverso
Subir los commits locales al repositorio remoto forzando la sobrescritura del historial
30s
50 En Scrum, el burn down chart representa:
El coste económico acumulado del proyecto desglosado por sprint y recurso del equipo
✓ La cantidad de requisitos pendientes en el backlog al comienzo de cada sprint, mostrando la tendencia de avance
La distribución de tareas asignadas a cada miembro del equipo de desarrollo durante el sprint
El número de defectos detectados en cada iteración, clasificados por severidad y componente
30s