WorksheetsQuiz 2 : Becoming a Reactive Web Developer
Total questions: 28
Worksheet time: 28mins
En relación con las aplicaciones web reactivas en OutSystems, ¿cuál de las siguientes opciones es falsa?
A. Una aplicación web reactiva es una aplicación multidispositivo (cross-device).
B. Las solicitudes de datos se ejecutan de forma sincrónica.
C. El código generado por OutSystems da como resultado una aplicación de una sola página (single-page).
D. Un desarrollador construye la Reactive Web App en Service Studio.
¿Cuál de las siguientes opciones es falsa en relación con los módulos (Modules) y las aplicaciones (applications)?
A. Una aplicación se compone de un conjunto de Módulos (Modules).
B. Los módulos pueden ser de diferentes tipos, como Reactive Web App, Blank o Extension.
C. Los elementos pueden exponerse y reutilizarse, pero sólo dentro de la misma aplicación.
D. Un módulo (Module) que reutiliza un elemento de otro módulo (Module) se denomina consumidor (Consumer).
Una de las siguientes herramientas permite gestionar el ciclo de vida de la aplicación a través de una infraestructura. ¿Cuál es?
A. Service Center
B. LifeTime
C. Service Studio
D. Integration Studio
¿Cuál de las siguientes afirmaciones sobre las Entidades (Entities) es falsa?
A. Las entidades (Entities) tienen atributos (Attributes).
B. Las entidades (Entities) no necesitan identificador (Identifier).
C. Las entidades (Entities) sólo se almacenan en la memoria (Memory).
D. Las entidades pueden crearse (created), actualizarse (updated) y eliminarse (deleted).
¿Cuál de las siguientes es una característica de una entidad estática (Static Entity)?
A. No se puede cambiar después de la primera publicación.
B. Contiene un conjunto de Registros (Records).
C. Tiene dos Acciones (Actions) de Entidad (Entity).
D. No puede ampliarse con nuevos atributos (Attributes).
En relación con el widget IF, ¿Cuál de las siguientes opciones es falsa?
A. Las funciones se pueden utilizar dentro de la condición de un If.
B. Se pueden añadir más ramas a un widget If.
C. Sólo se muestra una de las ramas en tiempo de ejecución.
D. Se pueden añadir múltiples widgets dentro de cada rama.
¿Cuál de las siguientes opciones es falsa?
A. Los Parámetros de Entrada (Input Parameters) permiten pasar datos entre Pantallas (Screens) al navegar entre ellas.
B. Se puede acceder directamente a las variables locales (Local Variables) de una pantalla (Screen) desde otra pantalla (Screen).
C. Las Variables Locales (Local Variables) permiten almacenar temporalmente información relevante dentro de una Pantalla (Screen).
D. Cuando cambia el valor de una Variable Local (Local Variable), la interfaz de usuario reacciona inmediatamente.
En relación con el enunciado de Switch, ¿Cuál de las siguientes opciones es falsa?
A. Se ejecuta la primera rama (branch) que la condición evalúa a True.
B. Cada rama (branch) que se evalúa como True se ejecuta.
C. Si ninguna rama (branch) se evalúa como True, se ejecuta la rama “De lo contrario” (Otherwise).
D. La rama “De lo contrario” (Otherwise) debe existir.
En cuanto a la ordenación en agregados (Sorting in Aggregates), ¿Cuál de las siguientes opciones es correcta?
A. Los agregados (Aggregates) sólo admiten un criterio de ordenación (Sorting).
B. Si se define más de un criterio de ordenación (Sorting), todos ellos deben tener la misma dirección (ascendente o descendente).
C. Es obligatorio establecer la dirección para todos los criterios de ordenación (Sorting) (ascendente o descendente).
D. Sólo es posible establecer varios criterios de ordenación (Sorting), si existen registros duplicados en la entidad.
¿Cuál de los siguientes pasos es necesario para crear una relación 1 a 1 entre la Entidad (Entity) A y la Entidad (Entity) B?
A. Establezca el tipo de datos del atributo identificador de la Entidad B en Identificador de la Entidad A.
B. Añade una nueva Entidad C, con dos atributos de referencia de tipo Identificador de la Entidad A e Identificador de la Entidad B.
C. Añade un nuevo atributo de referencia de tipo Identificador de la Entidad B a la Entidad A.
D. Añade una nueva Entidad C, cuyo atributo identificador es una composición de los tipos Identificador de la Entidad A e Identificador de la Entidad B.
En relación con los índices (Indexes), ¿Cuál de las siguientes opciones es correcta?
A. No se pueden añadir índices (Indexes) personalizados a una Entidad.
B. Los índices (Indexes) aceleran la recuperación de datos sin ningún tipo de impacto.
C. Los índices (Indexes) únicos ayudan a evitar la duplicación de datos.
D. Los índices (Indexes) sobre atributos referenciados no pueden borrarse.
Teniendo en cuenta el desplegable (Dropdown) y el grupo de botones (Button Group), ¿Cuál de las siguientes opciones es falsa?
A. Un Grupo de botones (Button Group) necesita un Elemento de grupo de botones (Button Group Item) para representar cada opción que el usuario tendrá disponible para elegir.
B. La propiedad Lista del Desplegable (Dropdown) define los datos que aparecerán como opciones a un usuario en una Pantalla.
C. Cada elemento de grupo de botones (Button Group Item) dentro de un grupo de botones (Button Group) tiene una propiedad Variable para guardar la opción elegida por el usuario.
D. La propiedad Variable del desplegable (Dropdown) contendrá el valor seleccionado por el usuario. Ese valor se define en la propiedad Options Value.
¿Cuál es el comportamiento de la pantalla (Screen) cuando un widget no es válido (propiedad Valid establecida a False)?
A. La pantalla (Screen) muestra el widget en gris, y muestra el mensaje de error de validación en la entrada (Input).
B. El widget no aparece en la pantalla (Screen) y en su lugar aparece el mensaje de validación.
C. Muestra el widget normal y muestra el mensaje de error de validación cuando pasamos el ratón por encima.
D. Muestra el widget normal, aplica un estilo específico (por ejemplo, borde rojo) y muestra el mensaje de error de validación.
Considerando Usuarios y Roles en OutSystems, ¿Cuál de las siguientes opciones es correcta?
A. Por defecto, los usuarios finales (end-users) se gestionan en la aplicación integrada Usuarios (Built-in Users application).
B. Los usuarios finales (end-users) sólo pueden crearse mediante programación, utilizando Acciones de la aplicación Usuarios (Actions from the Users application).
C. Hay tres roles incorporados en OutSystems: Anonymous, AppUser and Registered.
D. Todos los usuarios, con o sin login, tienen automáticamente el Rol Registered.
En OutSystems, ¿Dónde podemos colocar puntos de interrupción?
A. Sólo en acciones (cliente (Client-side) y servidor (Server-Side)).
B. Sólo lógica de servidor (Server-side logic).
C. Sólo lógica del lado del cliente (Client-side).
D. En Acciones (Actions) y Variables.
Al depurar (debugging) un módulo consumidor, ¿Cómo garantizamos que la ejecución se detiene en los puntos de interrupción (breakpoints) definidos en el módulo productor?
A. Sólo tenemos que establecer puntos de interrupción (breakpoints) en el módulo productor. La ejecución se detendrá en sus puntos de interrupción (breakpoints) automáticamente.
B. También tenemos que iniciar el depurador (debugger) en el módulo productor.
C. Nada, deja abierto Service Studio.
D. En el productor, establezca la propiedad Módulo de entrada (Entry Module) en el módulo consumidor.
En relación con los eventos en bloque (Block Events), ¿Cuál de las siguientes opciones es falsa?
A. Los eventos pueden definirse a nivel de bloque (Block) o de pantalla (Screen).
B. Los eventos permiten pasar información del ámbito del bloque (Block) al ámbito padre.
C. Los eventos son desencadenados por un bloque (Block) y gestionados por su padre.
D. Dos instancias de un bloque (Block) pueden utilizar el mismo manejador para el mismo evento.
Teniendo en cuenta que los Agregados (Aggregates) pueden tener columnas ocultas, ¿Cuál de las siguientes opciones es correcta?
A. Ocultar columnas en el Agregado (Aggregate) sólo afecta a la vista previa de la salida.
B. Las columnas que están vacías en la base de datos se ocultan automáticamente.
C. Las columnas ocultas ayudan a optimizar el Agregado (Aggregate).
D. Las columnas ocultas no forman parte de la salida.
Un bloque (Block) puede utilizarse...
A. Sólo dentro de otras pantallas (Screens).
B. Pantallas (Screens) y bloques (Blocks) interiores, incluido él mismo.
C. Dentro de Pantallas (Screens) y Bloques (Blocks), excepto sobre sí mismo.
D. Sólo dentro de otros Bloques (Blocks).
Considerando los Agregados (Aggregates) y la Herramienta SQL (SQL Tool), ¿Cuál de las siguientes es la opción correcta?
A. Todas las consultas (Queries) que se pueden escribir en una Herramienta SQL (SQL Tool) se pueden definir en un Agregado (Aggregate).
B. Las uniones (Joins) entre entidades (Entities) sólo pueden definirse en Agregados (Aggregate).
C. La herramienta SQL (SQL Tool) permite escribir consultas que contengan subconsultas (sub-queries).
D. La agrupación de atributos sólo puede realizarse con la herramienta SQL (SQL Tool).
¿En cuál de las siguientes situaciones se activa el evento On Parameters Changed?
A. Si el valor de los Parámetros de Entrada (Input Parameters) de un Bloque (Block) cambia dentro de una Acción Cliente (Client Action) del Bloque (Block).
B. El padre del bloque (Block) debe activar explícitamente la función On Parameters Changed.
C. Cuando el padre del bloque (Block) cambia el valor de al menos uno de los parámetros de entrada (Input Parameters) del bloque (Block).
Considerando el evento Initialize de una Pantalla (Screen), ¿Cuál de los siguientes sería el mejor caso de uso para ese evento?
A. Recuperar datos de la base de datos del servidor
B. Actuar sobre los datos devueltos por una Acción de Datos (Data Action).
C. Manipular el DOM.
D. Establece el valor por defecto de una Variable Local.
Considere un Agregado (Aggregate) con la propiedad Fetch establecida en Only On Demand. ¿Cuándo se ejecuta ese Agregado?
A. Automáticamente, cuando la Pantalla (Screen) se está inicializando.
B. Programáticamente, utilizando un nodo Actualizar Datos (Refresh Data) en una Acción de Pantalla (Screen Action).
C. Automáticamente, cuando terminan los Agregados (Aggregates) configurados para funcionar "At Start".
D. Programáticamente, utilizando una Acción de Servidor (Server Action).
¿Cuál de los siguientes sería un buen caso de uso para una Variable Cliente (Client Variables)?
A. Número de tarjeta de crédito (Credit Card Number)
B. Foto de perfil (Profile Picture)
C. Identificador de usuario (User Identifier)
D. Nombre de usuario (User Name)
¿Cuál de los siguientes es un buen caso de uso para una Propiedad de Sitio (Site Property)?
A. ID de usuario actual (Current user ID)
B. Cantidad total de existencias de productos (Total Stock Quantity of Products)
C. Clave API del servicio web REST (REST Web Service API Key)
D. Buscar palabra clave (Search Keyword)
Un desarrollador debe favorecer el uso de una Estructura (Structure) en lugar de la Entidad (Entity) en la salida de una SELECT SQL Query. ¿Está de acuerdo con esta afirmación?
A. Sí, porque las consultas (Queries) son más fáciles de mantener.
B. Sí, porque las consultas (Queries) recuperarán menos atributos y menos datos.
C. No, ya que es exactamente lo mismo.
D. No, es preferible utilizar la Entidad (Entity) en lugar de la Estructura (Structure).
¿Cuál de las siguientes opciones es correcta, cuando se implementa la paginación (Pagination) con Tablas (Tables) o Listas (Lists)?
A. La propiedad Índice inicial (Start Index) de la Paginación (Pagination) contiene el número de página actual.
B. La propiedad Max Records de la Paginación (Pagination) contiene el número de registros a mostrar por página.
C. La entrada Recuento total (Total Count) del patrón de paginación (Pagination) debe establecerse en el número de registros por página.
En cuanto a la ordenación de listas (Sorting Lists), ¿Cuál de las siguientes opciones es correcta?
A. Las listas (Lists) tienen un evento On Sort incorporado.
B. Las cláusulas de ordenación no pueden modificarse dinámicamente en tiempo de ejecución cuando se utilizan listas (Lists).
C. Deben utilizarse otros widgets para que el usuario final pueda definir los criterios de ordenación.
