Programación orientada a objetos y UML — Test de Cuerpo de Gestión de Sistemas e Informática de la Administración del Estado
Test gratuito de 30 preguntas de Cuerpo de Gestión de Sistemas e Informática de la Administración del Estado, con la explicación justificada de cada respuesta. Responde las preguntas y envía el test para ver tu resultado: no necesitas registrarte.
En programación orientada a objetos, ¿qué principio se refiere a la capacidad de que un objeto pueda tomar muchas formas o comportarse de múltiples maneras?
- AEncapsulación
- BAbstracción
- CPolimorfismo
- DCohesión
En UML, ¿qué tipo de diagrama muestra las interacciones entre objetos en un orden temporal?
- ADiagrama de clases
- BDiagrama de casos de uso
- CDiagrama de secuencia
- DDiagrama de componentes
¿Cuál de los siguientes es un principio SOLID que establece que una clase debe tener una única razón para cambiar?
- APrincipio de inversión de dependencias (DIP)
- BPrincipio de sustitución de Liskov (LSP)
- CPrincipio de segregación de interfaces (ISP)
- DPrincipio de responsabilidad única (SRP)
En UML, ¿qué relación se representa con un rombo relleno en un extremo de la línea?
- AAgregación
- BAsociación
- CComposición
- DDependencia
El patrón de diseño Singleton se utiliza para:
- ACrear múltiples instancias de una clase con diferentes configuraciones.
- BGarantizar que una clase tenga una única instancia y proporcionar un punto de acceso global a ella.
- CDefinir una interfaz para crear objetos, pero deja que las subclases decidan qué clase instanciar.
- DNotificar automáticamente a otros objetos sobre cambios en un objeto observado.
En programación orientada a objetos, ¿qué concepto se refiere a ocultar los detalles internos de un objeto y exponer solo una interfaz controlada?
- AHerencia
- BPolimorfismo
- CEncapsulación
- DAbstracción
En UML, ¿qué diagrama se utiliza para modelar los requisitos funcionales de un sistema desde la perspectiva del usuario?
- ADiagrama de secuencia
- BDiagrama de clases
- CDiagrama de casos de uso
- DDiagrama de actividad
Según el principio de sustitución de Liskov (LSP), ¿qué afirmación es correcta?
- ALas clases derivadas deben poder sustituirse por sus clases base sin alterar el comportamiento del programa.
- BLas clases deben estar abiertas para extensión pero cerradas para modificación.
- CDeben preferirse las interfaces específicas del cliente en lugar de interfaces generales.
- DLos módulos de alto nivel no deben depender de módulos de bajo nivel, ambos deben depender de abstracciones.
En el contexto de los patrones de diseño, ¿qué patrón define una dependencia uno-a-muchos entre objetos de manera que cuando un objeto cambia de estado, todos sus dependientes son notificados?
- AFactory Method
- BSingleton
- CObserver
- DMVC
En UML, ¿qué diagrama muestra la estructura estática del sistema mediante clases, interfaces y sus relaciones?
- ADiagrama de secuencia
- BDiagrama de componentes
- CDiagrama de clases
- DDiagrama de objetos
¿Cuál de los siguientes es un principio SOLID que establece que las clases deben estar abiertas para extensión pero cerradas para modificación?
- APrincipio de responsabilidad única (SRP)
- BPrincipio abierto-cerrado (OCP)
- CPrincipio de segregación de interfaces (ISP)
- DPrincipio de inversión de dependencias (DIP)
En programación orientada a objetos, ¿qué término describe la creación de una nueva clase a partir de una clase existente, heredando sus atributos y métodos?
- APolimorfismo
- BEncapsulación
- CAbstracción
- DHerencia
En UML, ¿qué relación indica que un objeto utiliza temporalmente otro objeto, pero no lo almacena de forma permanente?
- AAsociación
- BAgregación
- CComposición
- DDependencia
El patrón de diseño Factory Method se utiliza para:
- AGarantizar una única instancia de una clase.
- BSeparar la construcción de un objeto complejo de su representación.
- CDefinir una interfaz para crear objetos, pero deja que las subclases decidan qué clase instanciar.
- DConvertir la interfaz de una clase en otra interfaz que el cliente espera.
¿Cuál de los siguientes diagramas UML se utiliza para modelar el flujo de actividades o procesos de negocio?
- ADiagrama de secuencia
- BDiagrama de casos de uso
- CDiagrama de actividad
- DDiagrama de componentes
En el contexto de los principios SOLID, ¿qué principio establece que ninguna clase debería depender de métodos que no utiliza?
- APrincipio de responsabilidad única (SRP)
- BPrincipio abierto-cerrado (OCP)
- CPrincipio de segregación de interfaces (ISP)
- DPrincipio de inversión de dependencias (DIP)
En UML, ¿qué relación de asociación representa un 'todo-parte' donde la parte puede existir independientemente del todo?
- AComposición
- BDependencia
- CAgregación
- DRealización
El patrón de diseño MVC (Modelo-Vista-Controlador) separa la lógica de la aplicación en tres componentes. ¿Cuál de estos componentes es responsable de gestionar la entrada del usuario y actualizar el modelo?
- AModelo
- BVista
- CControlador
- DServicio
En programación orientada a objetos, ¿qué concepto permite definir un contrato que las clases deben cumplir, especificando métodos que deben ser implementados sin definir su comportamiento?
- AClase abstracta
- BClase final
- CInterfaz
- DConstructor
En UML, ¿qué diagrama muestra la organización y dependencias entre los componentes de software en un sistema?
- ADiagrama de clases
- BDiagrama de secuencia
- CDiagrama de componentes
- DDiagrama de despliegue
¿Cuál de los siguientes principios SOLID establece que los módulos de alto nivel no deben depender de módulos de bajo nivel, sino que ambos deben depender de abstracciones?
- APrincipio de responsabilidad única (SRP)
- BPrincipio abierto-cerrado (OCP)
- CPrincipio de segregación de interfaces (ISP)
- DPrincipio de inversión de dependencias (DIP)
En UML, ¿qué relación se utiliza para representar la herencia entre clases?
- AAsociación
- BDependencia
- CGeneralización
- DRealización
¿Qué patrón de diseño se utiliza cuando se necesita desacoplar la construcción de un objeto complejo de su representación, permitiendo la creación de diferentes representaciones?
- AFactory Method
- BSingleton
- CBuilder
- DObserver
En programación orientada a objetos, ¿qué término describe la capacidad de definir múltiples métodos con el mismo nombre pero con diferentes parámetros?
- ASobrecarga
- BSobreescritura
- CPolimorfismo paramétrico
- DEncapsulación
En UML, ¿qué diagrama se utiliza para modelar la vista física del sistema, mostrando la disposición de los nodos hardware y los componentes de software desplegados?
- ADiagrama de componentes
- BDiagrama de despliegue
- CDiagrama de paquetes
- DDiagrama de objetos
¿Qué principio de diseño orientado a objetos se refiere a la idea de que los detalles de implementación deben estar ocultos y solo se debe exponer una interfaz pública?
- APrincipio de abstracción
- BPrincipio de encapsulación
- CPrincipio de herencia
- DPrincipio de modularidad
En el contexto de UML, ¿qué diagrama se utiliza para mostrar las interacciones entre objetos centrándose en los mensajes intercambiados a lo largo del tiempo?
- ADiagrama de actividad
- BDiagrama de secuencia
- CDiagrama de comunicación
- DDiagrama de estados
El patrón de diseño Adapter se utiliza para:
- AConvertir la interfaz de una clase en otra interfaz que el cliente espera.
- BSeparar la construcción de un objeto complejo de su representación.
- CGarantizar que una clase tenga una única instancia.
- DNotificar a varios objetos sobre cambios en otro objeto.
En programación orientada a objetos, ¿qué término describe la creación de una clase que no se puede instanciar y puede contener métodos abstractos?
- AClase concreta
- BClase sellada
- CClase abstracta
- DClase estática
En UML, ¿qué relación se utiliza para representar que una clase implementa una interfaz?
- AGeneralización
- BRealización
- CAsociación
- DDependencia
Soluciones y explicaciones
Ver las 30 respuestas correctas y su explicación
Esta sección revela las respuestas correctas. Te recomendamos hacer el test antes de consultarla.
-
En programación orientada a objetos, ¿qué principio se refiere a la capacidad de que un objeto pueda tomar muchas formas o comportarse de múltiples maneras?
Respuesta correcta: Polimorfismo
El polimorfismo permite que un objeto pueda tomar múltiples formas, típicamente mediante la sobrecarga de métodos o la implementación de interfaces.
-
En UML, ¿qué tipo de diagrama muestra las interacciones entre objetos en un orden temporal?
Respuesta correcta: Diagrama de secuencia
El diagrama de secuencia muestra las interacciones entre objetos en una secuencia temporal, representando los mensajes que se intercambian.
-
¿Cuál de los siguientes es un principio SOLID que establece que una clase debe tener una única razón para cambiar?
Respuesta correcta: Principio de responsabilidad única (SRP)
El principio de responsabilidad única (SRP) establece que una clase debe tener una única responsabilidad, es decir, una única razón para cambiar.
-
En UML, ¿qué relación se representa con un rombo relleno en un extremo de la línea?
Respuesta correcta: Composición
La composición es una relación de todo-parte fuerte, donde el rombo relleno indica que el objeto contenedor es responsable de la existencia de las partes.
-
El patrón de diseño Singleton se utiliza para:
Respuesta correcta: Garantizar que una clase tenga una única instancia y proporcionar un punto de acceso global a ella.
El patrón Singleton garantiza que una clase tenga una única instancia y proporciona un punto de acceso global a dicha instancia.
-
En programación orientada a objetos, ¿qué concepto se refiere a ocultar los detalles internos de un objeto y exponer solo una interfaz controlada?
Respuesta correcta: Encapsulación
La encapsulación consiste en ocultar los detalles internos de un objeto y exponer solo lo necesario mediante una interfaz pública, protegiendo su estado.
-
En UML, ¿qué diagrama se utiliza para modelar los requisitos funcionales de un sistema desde la perspectiva del usuario?
Respuesta correcta: Diagrama de casos de uso
El diagrama de casos de uso modela los requisitos funcionales de un sistema mostrando las interacciones entre actores y el sistema.
-
Según el principio de sustitución de Liskov (LSP), ¿qué afirmación es correcta?
Respuesta correcta: Las clases derivadas deben poder sustituirse por sus clases base sin alterar el comportamiento del programa.
El principio de sustitución de Liskov (LSP) establece que los objetos de una clase derivada deben poder sustituirse por objetos de la clase base sin afectar la corrección del programa.
-
En el contexto de los patrones de diseño, ¿qué patrón define una dependencia uno-a-muchos entre objetos de manera que cuando un objeto cambia de estado, todos sus dependientes son notificados?
Respuesta correcta: Observer
El patrón Observer define una relación de dependencia uno-a-muchos entre objetos, de modo que cuando un objeto (sujeto) cambia su estado, todos sus observadores son notificados y actualizados automáticamente.
-
En UML, ¿qué diagrama muestra la estructura estática del sistema mediante clases, interfaces y sus relaciones?
Respuesta correcta: Diagrama de clases
El diagrama de clases muestra la estructura estática del sistema, incluyendo clases, interfaces, atributos, métodos y las relaciones entre ellos.
-
¿Cuál de los siguientes es un principio SOLID que establece que las clases deben estar abiertas para extensión pero cerradas para modificación?
Respuesta correcta: Principio abierto-cerrado (OCP)
El principio abierto-cerrado (OCP) establece que las entidades de software (clases, módulos, etc.) deben estar abiertas para extensión pero cerradas para modificación.
-
En programación orientada a objetos, ¿qué término describe la creación de una nueva clase a partir de una clase existente, heredando sus atributos y métodos?
Respuesta correcta: Herencia
La herencia es un mecanismo que permite crear una nueva clase (subclase) a partir de una clase existente (superclase), heredando sus atributos y métodos.
-
En UML, ¿qué relación indica que un objeto utiliza temporalmente otro objeto, pero no lo almacena de forma permanente?
Respuesta correcta: Dependencia
La dependencia es una relación de uso temporal, donde un cambio en un elemento (el proveedor) puede afectar al otro (el cliente). Se representa con una línea discontinua.
-
El patrón de diseño Factory Method se utiliza para:
Respuesta correcta: Definir una interfaz para crear objetos, pero deja que las subclases decidan qué clase instanciar.
El patrón Factory Method define una interfaz para crear objetos, pero permite a las subclases decidir qué clase concreta instanciar.
-
¿Cuál de los siguientes diagramas UML se utiliza para modelar el flujo de actividades o procesos de negocio?
Respuesta correcta: Diagrama de actividad
El diagrama de actividad modela el flujo de actividades o procesos de negocio, mostrando la secuencia de acciones y decisiones.
-
En el contexto de los principios SOLID, ¿qué principio establece que ninguna clase debería depender de métodos que no utiliza?
Respuesta correcta: Principio de segregación de interfaces (ISP)
El principio de segregación de interfaces (ISP) establece que ninguna clase debería verse obligada a depender de métodos que no utiliza, por lo que es mejor tener interfaces específicas y pequeñas.
-
En UML, ¿qué relación de asociación representa un 'todo-parte' donde la parte puede existir independientemente del todo?
Respuesta correcta: Agregación
La agregación es una relación de asociación 'todo-parte' débil, representada por un rombo vacío, donde la parte puede existir independientemente del todo.
-
El patrón de diseño MVC (Modelo-Vista-Controlador) separa la lógica de la aplicación en tres componentes. ¿Cuál de estos componentes es responsable de gestionar la entrada del usuario y actualizar el modelo?
Respuesta correcta: Controlador
En el patrón MVC, el controlador maneja la entrada del usuario, interactúa con el modelo y actualiza la vista. El modelo gestiona los datos y la lógica de negocio, y la vista presenta los datos.
-
En programación orientada a objetos, ¿qué concepto permite definir un contrato que las clases deben cumplir, especificando métodos que deben ser implementados sin definir su comportamiento?
Respuesta correcta: Interfaz
Una interfaz define un contrato que las clases deben cumplir, especificando métodos que deben ser implementados, sin proporcionar una implementación concreta.
-
En UML, ¿qué diagrama muestra la organización y dependencias entre los componentes de software en un sistema?
Respuesta correcta: Diagrama de componentes
El diagrama de componentes muestra la organización y dependencias entre los componentes de software, como bibliotecas, archivos ejecutables, etc.
-
¿Cuál de los siguientes principios SOLID establece que los módulos de alto nivel no deben depender de módulos de bajo nivel, sino que ambos deben depender de abstracciones?
Respuesta correcta: Principio de inversión de dependencias (DIP)
El principio de inversión de dependencias (DIP) establece que los módulos de alto nivel no deben depender de módulos de bajo nivel, ambos deben depender de abstracciones. Además, las abstracciones no deben depender de detalles, sino los detalles de abstracciones.
-
En UML, ¿qué relación se utiliza para representar la herencia entre clases?
Respuesta correcta: Generalización
La generalización es la relación de herencia entre una clase general (superclase) y una clase más específica (subclase). Se representa con una línea continua y una flecha hueca.
-
¿Qué patrón de diseño se utiliza cuando se necesita desacoplar la construcción de un objeto complejo de su representación, permitiendo la creación de diferentes representaciones?
Respuesta correcta: Builder
El patrón Builder separa la construcción de un objeto complejo de su representación, permitiendo que el mismo proceso de construcción cree diferentes representaciones.
-
En programación orientada a objetos, ¿qué término describe la capacidad de definir múltiples métodos con el mismo nombre pero con diferentes parámetros?
Respuesta correcta: Sobrecarga
La sobrecarga (overloading) permite definir múltiples métodos con el mismo nombre pero con diferentes listas de parámetros (diferente tipo o número).
-
En UML, ¿qué diagrama se utiliza para modelar la vista física del sistema, mostrando la disposición de los nodos hardware y los componentes de software desplegados?
Respuesta correcta: Diagrama de despliegue
El diagrama de despliegue muestra la vista física del sistema, incluyendo nodos hardware, componentes de software desplegados y las conexiones entre ellos.
-
¿Qué principio de diseño orientado a objetos se refiere a la idea de que los detalles de implementación deben estar ocultos y solo se debe exponer una interfaz pública?
Respuesta correcta: Principio de encapsulación
La encapsulación oculta los detalles de implementación y expone solo una interfaz pública, protegiendo la integridad del objeto.
-
En el contexto de UML, ¿qué diagrama se utiliza para mostrar las interacciones entre objetos centrándose en los mensajes intercambiados a lo largo del tiempo?
Respuesta correcta: Diagrama de secuencia
El diagrama de secuencia muestra las interacciones entre objetos en un orden temporal, con líneas de vida y mensajes intercambiados a lo largo del tiempo.
-
El patrón de diseño Adapter se utiliza para:
Respuesta correcta: Convertir la interfaz de una clase en otra interfaz que el cliente espera.
El patrón Adapter convierte la interfaz de una clase en otra interfaz que el cliente espera, permitiendo que clases con interfaces incompatibles trabajen juntas.
-
En programación orientada a objetos, ¿qué término describe la creación de una clase que no se puede instanciar y puede contener métodos abstractos?
Respuesta correcta: Clase abstracta
Una clase abstracta es una clase que no se puede instanciar y puede contener métodos abstractos (sin implementación) que deben ser implementados por las subclases.
-
En UML, ¿qué relación se utiliza para representar que una clase implementa una interfaz?
Respuesta correcta: Realización
La realización es la relación entre una clase y una interfaz, indicando que la clase implementa los métodos definidos en la interfaz. Se representa con una línea discontinua y una flecha hueca.