├── .gitignore
├── img
├── señalar.png
└── estudiar.png
├── JS
├── ingles_3.js
├── cliente_2.js
├── ingles_6.js
├── ingles_1.js
├── despliegue_2.js
├── despliegue_1.js
├── servidor_1.js
├── dwi_2.js
├── cliente_1.js
├── quiz_engine.js
├── dwi_4.js
├── dwi_1.js
├── dwi_3.js
├── ingles_9.js
├── despliegue_6.js
├── empresa_2.js
├── despliegue_4.js
├── ingles_2.js
├── servidor_2.js
├── empresa_3.js
├── despliegue_3.js
├── despliegue_8.js
├── despliegue_5.js
├── despliegue_7.js
├── despliegue_9.js
├── empresa_5.js
├── empresa_7.js
└── empresa_4.js
└── quiz.html
/.gitignore:
--------------------------------------------------------------------------------
1 | # SpecStory explanation file
2 | .specstory/.what-is-this.md
3 |
--------------------------------------------------------------------------------
/img/señalar.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/pablopl94/QuizzDAW/HEAD/img/señalar.png
--------------------------------------------------------------------------------
/img/estudiar.png:
--------------------------------------------------------------------------------
1 | AuthenticationFailedServer failed to authenticate the request. Make sure the value of Authorization header is formed correctly including the signature.
2 | RequestId:e6fb647c-101e-005e-1203-c0521b000000
3 | Time:2025-05-08T10:22:28.9091162ZSigned expiry time [Thu, 08 May 2025 09:56:51 GMT] must be after signed start time [Thu, 08 May 2025 10:22:28 GMT]
--------------------------------------------------------------------------------
/JS/ingles_3.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Datos del quiz de Inglés Técnico - Tema 1
3 | * Archivo convertido al nuevo formato
4 | */
5 |
6 | // Definir los datos del quiz
7 | const quizQuestions = [
8 | {
9 | question: "What's the salary difference between a Hardware Engineer and a Software Engineer?",
10 | a: "Software Engineers earn more money than Hardware Engineers",
11 | b: "Hardware Engineers earn $4,920 more than Software Engineers",
12 | c: "They earn exactly the same salary",
13 | d: "Software Engineers earn $10,000 more than Hardware Engineers",
14 | correct: "b",
15 | },
16 | {
17 | question: "Which IT professional earns the highest salary according to the infographics?",
18 | a: "Web Developer",
19 | b: "Computer Engineer",
20 | c: "Computer Scientist",
21 | d: "Hardware Engineer",
22 | correct: "c",
23 | },
24 | {
25 | question: "What kind of education is required for a Computer Scientist?",
26 | a: "Bachelor's Degree",
27 | b: "Computer Science or Computer Engineering Degree",
28 | c: "Doctoral or Professional Degree",
29 | d: "Electrical & Computer Engineering Degree",
30 | correct: "c",
31 | },
32 | {
33 | question: "Which of these professionals focuses on 'the look and feel of a website'?",
34 | a: "Web Developer",
35 | b: "Web Designer",
36 | c: "Software Engineer",
37 | d: "Computer Engineer",
38 | correct: "b",
39 | },
40 | {
41 | question: "What's the main focus of a Computer Scientist according to the job description?",
42 | a: "Developing and operating computer systems",
43 | b: "Developing programs & computers, focusing on data and algorithms",
44 | c: "Creating the inner workings of a website",
45 | d: "Developing, designing and testing software",
46 | correct: "b",
47 | },
48 | {
49 | question: "Which IT role has the most job opportunities available?",
50 | a: "Web Designer",
51 | b: "Software Engineer",
52 | c: "Computer Engineer",
53 | d: "Hardware Engineer",
54 | correct: "b",
55 | },
56 | {
57 | question: "What programming languages are commonly used by Web Developers?",
58 | a: "HTML, CSS, and JavaScript",
59 | b: "PHP, .NET, Python, C, Ruby",
60 | c: "Java, C++, and Python",
61 | d: "SQL, NoSQL, and MongoDB",
62 | correct: "b",
63 | },
64 | {
65 | question: "Which professional is described as having 'Right-brain: Strong intuition, creativity and imagination'?",
66 | a: "Web Developer",
67 | b: "Computer Scientist",
68 | c: "Web Designer",
69 | d: "Software Engineer",
70 | correct: "c",
71 | },
72 | {
73 | question: "What skill sets are required for a Software Engineer?",
74 | a: "Troubleshooting, Problem Solving, Systems Evaluation",
75 | b: "Technology Design, Complex Problem Solving, Critical Thinking",
76 | c: "HTML, CSS, and JavaScript",
77 | d: "Logic, linear thinking and technical abilities",
78 | correct: "b",
79 | },
80 | {
81 | question: "What's the salary of a Web Developer?",
82 | a: "$64,110",
83 | b: "$70,120",
84 | c: "$102,450",
85 | d: "$107,840",
86 | correct: "b",
87 | },
88 | {
89 | question: "Which two IT careers can work as freelancers according to the infographics?",
90 | a: "Software Engineer and Hardware Engineer",
91 | b: "Computer Engineer and Computer Scientist",
92 | c: "Web Designer and Web Developer",
93 | d: "Software Engineer and Web Designer",
94 | correct: "c",
95 | },
96 | {
97 | question: "What is the main job description of a Hardware Engineer?",
98 | a: "Research, develop and test hardware or computer equipment",
99 | b: "Develop and operate computer systems, focus on link between hardware and software",
100 | c: "Develop, design and test software or construct networks and programs",
101 | d: "Creates the inner workings of a website",
102 | correct: "a",
103 | },
104 | {
105 | question: "Which professional is described as having 'Left-brain: Logic, linear thinking and technical' skills?",
106 | a: "Web Designer",
107 | b: "Web Developer",
108 | c: "Computer Engineer",
109 | d: "Software Engineer",
110 | correct: "b",
111 | },
112 | {
113 | question: "What's the approximate salary difference between the highest and lowest paid IT professionals shown in the infographics?",
114 | a: "Around $40,000",
115 | b: "Around $30,000",
116 | c: "Around $50,000",
117 | d: "Around $60,000",
118 | correct: "c",
119 | },
120 | {
121 | question: "How many jobs are available for Hardware Engineers according to the infographic?",
122 | a: "More than 1,128,000",
123 | b: "More than 87,000",
124 | c: "Less than 87,000",
125 | d: "Exactly 87,000",
126 | correct: "b",
127 | }
128 | ];
129 |
130 | // Inicializar el quiz con los datos
131 | if (typeof initializeQuiz === 'function') {
132 | initializeQuiz(quizQuestions);
133 | } else {
134 | console.error("Error: El motor del quiz no está cargado correctamente");
135 | }
--------------------------------------------------------------------------------
/JS/cliente_2.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Datos del quiz de Programación en Entorno Cliente - 2º Trimestre
3 | * Archivo convertido al nuevo formato
4 | */
5 |
6 | // Definir los datos del quiz
7 | const quizQuestions = [
8 | {
9 | question: "¿Qué directiva se utiliza para aplicar estilos en línea dinámicamente?",
10 | a: "ngClass",
11 | b: "ngStyle",
12 | c: "ngFor",
13 | d: "ngIf",
14 | correct: "b",
15 | },
16 | {
17 | question: "¿Qué directiva permite realizar bucles desde Angular 17?",
18 | a: "ngIf",
19 | b: "ngFor",
20 | c: "@for",
21 | d: "ngSwitch",
22 | correct: "c",
23 | },
24 | {
25 | question: "¿Qué diferencia existe entre $index y $count en un bloque @for?",
26 | a: "Ambos representan la cantidad total de elementos",
27 | b: "$count es solo para atributos",
28 | c: "$index y $count no tienen relación",
29 | d: "$index representa la posición actual, mientras $count es el número total de elementos",
30 | correct: "d",
31 | },
32 | {
33 | question: "¿Qué es la inyección de dependencias en Angular?",
34 | a: "Una forma de vincular datos",
35 | b: "Un sistema de diseño de componentes",
36 | c: "Un patrón que permite a las clases recibir sus dependencias de fuentes externas",
37 | d: "Un método para crear directivas",
38 | correct: "c",
39 | },
40 | {
41 | question: "¿Qué decorador se utiliza en Angular para definir un servicio como inyectable?",
42 | a: "@Component",
43 | b: "@Directive",
44 | c: "@Injectable",
45 | d: "@NgModule",
46 | correct: "c",
47 | },
48 | {
49 | question: "¿Para qué se usa ngModel en un formulario?",
50 | a: "Estilizar el formulario",
51 | b: "Crear nuevos campos",
52 | c: "Enlazar datos bidireccionales entre el modelo y la vista",
53 | d: "Ejecutar validaciones",
54 | correct: "c",
55 | },
56 | {
57 | question: "¿Cuál es la ventaja de los formularios de tipo model en Angular?",
58 | a: "Son más fáciles de configurar",
59 | b: "Permiten una mayor personalización y validaciones complejas en el componente",
60 | c: "No requieren validación",
61 | d: "Funcionan sin ReactiveFormsModule",
62 | correct: "b",
63 | },
64 | {
65 | question: "¿Qué clase en Angular se usa para definir un grupo de controles en un formulario reactivo?",
66 | a: "TemplateGroup",
67 | b: "FormControl",
68 | c: "FormGroup",
69 | d: "Validators",
70 | correct: "c",
71 | },
72 | {
73 | question: "¿Qué módulo se utiliza para gestionar rutas en Angular?",
74 | a: "FormsModule",
75 | b: "RouterModule",
76 | c: "HttpClientModule",
77 | d: "BrowserModule",
78 | correct: "b",
79 | },
80 | {
81 | question: "¿Qué directiva se usa para renderizar componentes dinámicos basados en rutas?",
82 | a: "ngFor",
83 | b: "@for",
84 | c: "router-outlet",
85 | d: "ngIf",
86 | correct: "c",
87 | }, {
88 | question: "¿Qué directiva se utiliza para enlazar rutas directamente desde una plantilla HTML?",
89 | a: "router-outlet",
90 | b: "routerActive",
91 | c: "routerLink",
92 | d: "ngLink",
93 | correct: "c",
94 | },
95 | {
96 | question: "¿Qué permite la directiva routerLinkActive?",
97 | a: "Redirigir automáticamente",
98 | b: "Deshabilitar rutas",
99 | c: "Definir rutas hijas",
100 | d: "Aplicar estilos CSS al enlace activo",
101 | correct: "d"
102 | },
103 | {
104 | question: "¿Qué clase se inyecta para acceder a parámetros dinámicos en una ruta activa?",
105 | a: "Router",
106 | b: "CanActivate",
107 | c: "RouteSnapshot",
108 | d: "ActivatedRoute",
109 | correct: "d"
110 | },
111 | {
112 | question: "¿Qué guard se usa para verificar si un usuario puede acceder a una ruta?",
113 | a: "CanLoad",
114 | b: "CanActivate",
115 | c: "CanDeactivate",
116 | d: "CanActivateChild",
117 | correct: "b"
118 | },
119 | {
120 | question: "¿Qué finalidad tiene el servicio?",
121 | a: "Conectarse con las API externas para poder recibir los datos que luego le pasaremos a los demás componentes.",
122 | b: "Sirve para almacenar nuestros datos de una aplicación para poder trabajar con ellos.",
123 | c: "Conectar a los componentes entre sí y pasarles los datos conectándose a la API externas.",
124 | d: "Conectar componentes entre sí.",
125 | correct: "c"
126 | },
127 | {
128 | question: "¿Qué patrón sigue Angular para gestionar instancias únicas de servicios?",
129 | a: "Observer",
130 | b: "Factory",
131 | c: "Singleton",
132 | d: "MVC",
133 | correct: "c"
134 | },
135 | {
136 | question: "¿Qué módulo permite realizar peticiones HTTP en Angular?",
137 | a: "ReactiveFormsModule",
138 | b: "HttpClientModule",
139 | c: "RouterModule",
140 | d: "FormsModule",
141 | correct: "b"
142 | },
143 | {
144 | question: "¿Qué tipo de objeto retorna una función que realiza una petición HTTP con Angular?",
145 | a: "Promesa",
146 | b: "Función sincrónica",
147 | c: "Observable",
148 | d: "Callback",
149 | correct: "c"
150 | },
151 | {
152 | question: "¿Qué método transforma un observable en una promesa en Angular?",
153 | a: "observableToPromise",
154 | b: "lastValueFrom",
155 | c: "transformObservable",
156 | d: "promiseFrom",
157 | correct: "b"
158 | }
159 | ];
160 |
161 | // Inicializar el quiz con los datos
162 | if (typeof initializeQuiz === 'function') {
163 | initializeQuiz(quizQuestions);
164 | } else {
165 | console.error("Error: El motor del quiz no está cargado correctamente");
166 | }
--------------------------------------------------------------------------------
/JS/ingles_6.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Datos del quiz de Inglés Técnico - Web Hosting
3 | * Archivo convertido al nuevo formato
4 | */
5 |
6 | // Definir los datos del quiz
7 | const quizQuestions = [
8 | {
9 | question: "What is a dedicated server?",
10 | a: "A server with multiple users",
11 | b: "A single computer exclusively reserved for hosting a website",
12 | c: "A virtual machine",
13 | d: "A network of computers",
14 | correct: "b",
15 | },
16 | {
17 | question: "What is a shared server?",
18 | a: "A computer used for hosting multiple websites",
19 | b: "A peer-to-peer network",
20 | c: "A server that divides files equally between users",
21 | d: "A computer exclusively used by one company",
22 | correct: "a",
23 | },
24 | {
25 | question: "What does 'uptime' refer to in web hosting?",
26 | a: "The time it takes to upload files",
27 | b: "The time during which a server is in operation",
28 | c: "The time it takes to update software",
29 | d: "The time it takes to install an operating system",
30 | correct: "b",
31 | },
32 | {
33 | question: "What does 'downtime' mean in web hosting?",
34 | a: "The time during which a server is not in operation",
35 | b: "The time it takes to download files",
36 | c: "The time it takes to back up data",
37 | d: "The maintenance period",
38 | correct: "a",
39 | },
40 | {
41 | question: "What are 'backups' in the context of web hosting?",
42 | a: "Additional servers for load balancing",
43 | b: "Secondary bandwidth sources",
44 | c: "Copies of data in case the original is lost or damaged",
45 | d: "Emergency power supplies",
46 | correct: "c",
47 | },
48 | {
49 | question: "What is 'bandwidth' in web hosting?",
50 | a: "The physical space on a server",
51 | b: "The number of websites on a server",
52 | c: "The speed of a server's processor",
53 | d: "Data transfer capacity",
54 | correct: "d",
55 | },
56 | {
57 | question: "According to the HostElite webpage, what uptime do they guarantee?",
58 | a: "95%",
59 | b: "97%",
60 | c: "99.9%",
61 | d: "100%",
62 | correct: "c",
63 | },
64 | {
65 | question: "What feature of HostElite plans allows hosting multiple websites?",
66 | a: "All plans have unlimited websites and databases",
67 | b: "Only the Premium plan allows multiple websites",
68 | c: "Multiple websites require additional payment",
69 | d: "Only dedicated servers can host multiple websites",
70 | correct: "a",
71 | },
72 | {
73 | question: "How long is the minimum contract period for HostElite?",
74 | a: "One month",
75 | b: "Three months",
76 | c: "Six months",
77 | d: "One year",
78 | correct: "c",
79 | },
80 | {
81 | question: "What does HostElite offer regarding operating systems?",
82 | a: "They only offer Linux",
83 | b: "They only offer Windows",
84 | c: "You can choose between operating systems, which they install using your license or you can purchase one from them",
85 | d: "You must provide your own operating system",
86 | correct: "c",
87 | },
88 | {
89 | question: "What is the setup fee for HostElite's hosting plans?",
90 | a: "$100",
91 | b: "$150",
92 | c: "$200",
93 | d: "$300",
94 | correct: "c",
95 | },
96 | {
97 | question: "How many CPUs does the Premier server plan have?",
98 | a: "1",
99 | b: "2",
100 | c: "3",
101 | d: "4",
102 | correct: "d",
103 | },
104 | {
105 | question: "What is the monthly fee for the Standard server plan?",
106 | a: "$100",
107 | b: "$200",
108 | c: "$300",
109 | d: "$500",
110 | correct: "c",
111 | },
112 | {
113 | question: "What is the monthly bandwidth for the Basic server plan?",
114 | a: "1 TB",
115 | b: "2 TB",
116 | c: "5 TB",
117 | d: "25 TB",
118 | correct: "b",
119 | },
120 | {
121 | question: "How many dedicated IP addresses come with the Premier server plan?",
122 | a: "10",
123 | b: "25",
124 | c: "50",
125 | d: "100",
126 | correct: "d",
127 | },
128 | {
129 | question: "What type of support does HostElite provide?",
130 | a: "Email support only",
131 | b: "9-5 support",
132 | c: "24-7 support",
133 | d: "Weekday support",
134 | correct: "c",
135 | },
136 | {
137 | question: "How much memory (RAM) does the Standard server plan have?",
138 | a: "8 GB",
139 | b: "12 GB",
140 | c: "16 GB",
141 | d: "24 GB",
142 | correct: "b",
143 | },
144 | {
145 | question: "Which CPU specification is correct for the Basic server plan?",
146 | a: "Quad core, 3.0 GHz",
147 | b: "8 core, 3.2 GHz",
148 | c: "16 core, 3.2 GHz",
149 | d: "Dual core, 2.8 GHz",
150 | correct: "a",
151 | },
152 | {
153 | question: "What happens if there is a hardware problem with a HostElite server?",
154 | a: "You need to fix it yourself",
155 | b: "They will replace hardware within 24 hours of any problem",
156 | c: "You need to pay extra for hardware replacements",
157 | d: "They will advise you on how to fix it",
158 | correct: "b",
159 | },
160 | {
161 | question: "What disk size does the Premier server plan offer?",
162 | a: "2 x 500 GB",
163 | b: "2 x 2 TB",
164 | c: "4 x 2 TB",
165 | d: "8 x 1 TB",
166 | correct: "c",
167 | }
168 | ];
169 |
170 | // Inicializar el quiz con los datos
171 | if (typeof initializeQuiz === 'function') {
172 | initializeQuiz(quizQuestions);
173 | } else {
174 | console.error("Error: El motor del quiz no está cargado correctamente");
175 | }
--------------------------------------------------------------------------------
/JS/ingles_1.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Datos del quiz de Inglés Técnico - 1º Trimestre
3 | * Archivo convertido al nuevo formato
4 | */
5 |
6 | // Definir los datos del quiz
7 | const quizQuestions = [
8 | {
9 | question: "Choose the correct definition for 'Hardware'",
10 | a: "The machines, wiring, and other physical components of a computer or other electronic system",
11 | b: "The programs and other operating information used by a computer",
12 | c: "A device used to put information into and get information out of the computer",
13 | d: "All of them are correct",
14 | correct: "a",
15 | },
16 | {
17 | question: "Choose the best definition for 'peripheral'",
18 | a: "A part or element of a larger whole, especially a part of a machine or vehicle.",
19 | b: "A peripheral is an input or output device that gives a computer additional functionality",
20 | c: "The programs and other operating information used by a computer.",
21 | d: "None of the answers are correct",
22 | correct: "b",
23 | },
24 | {
25 | question: "Which of the following can be considered peripherals?",
26 | a: "External drive, hard disk drive and optical drive",
27 | b: "Printer, keyboard and SSD",
28 | c: "External drive, hard disk drive and optical drive",
29 | d: "Mouse, monitor and keyboard",
30 | correct: "d",
31 | },
32 | {
33 | question: "What does a web administrator do?",
34 | a: "He/she is an IT professional who develops the software code for applications",
35 | b: "He/she is someone who manages any kind of technological system",
36 | c: "He/She is responsible for all aspects of keeping website content and design fresh, backed up, and fully functional",
37 | d: "He/she is an executive title given to the most senior IT professional within an Enterprise",
38 | correct: "c",
39 | },
40 | {
41 | question: "What does an application developer do?",
42 | a: "He/ She is an IT professional who develops (designs and writes) the software code for applications",
43 | b: "He/she is an IT professional in charge of implementing and maintaining a company’s network of computer",
44 | c: "He/she is an IT professional in charge of planning a company’s network of computer",
45 | d: "He/ She is someone who manages any kind of technological system",
46 | correct: "a",
47 | },
48 | {
49 | question: "A dedicating hosting is…",
50 | a: "A shared hosting",
51 | b: "A system in which each server has only one client’s website on It",
52 | c: "A free hosting",
53 | d: "None of them",
54 | correct: "b",
55 | },
56 | {
57 | question: "In which of the following areas can we consider proprietary source software the best option?",
58 | a: "Graphic design",
59 | b: "Office software",
60 | c: "Personal blogs",
61 | d: "Spreadsheets and Word processors",
62 | correct: "a",
63 | },
64 | {
65 | question: "Which of the following is not a feature of open source software?",
66 | a: "They can be free",
67 | b: "You can add features",
68 | c: "Companies have less control of their data",
69 | d: "Vendor controls software updates",
70 | correct: "c",
71 | },
72 | {
73 | question: "What do we understand by 'BIOS'?",
74 | a: "A set of computer instructions in firmware which control input and output operations",
75 | b: "The electronic circuit that executes instructions",
76 | c: "It is a kind of random Access memory",
77 | d: "It is a type of storage medium that permanently stores data on personal computers (PCs) and other electronic devices",
78 | correct: "a",
79 | },
80 | {
81 | question: "Which of these is a characteristic of a dedicated server?",
82 | a: "It is a type of virtual hosting",
83 | b: "Lower prices",
84 | c: "Many clients at the same time, it provides a fixed IP",
85 | d: "A server for each client",
86 | correct: "d",
87 | },
88 | {
89 | question: "A computer used for hosting multiple websites is called…",
90 | a: "A shared hosting",
91 | b: "A dedicated hosting",
92 | c: "A proprietary hosting",
93 | d: "All the answers are correct",
94 | correct: "a",
95 | },
96 | {
97 | question: "What does IP stand for?",
98 | a: "An International protocol for the transfer of compressed files.",
99 | b: "An Internet protocol formed by a string of numbers separated by periods between 0 and 255.",
100 | c: "An address used in an interconnection protocol between computer.",
101 | d: "All the answers are correct",
102 | correct: "b",
103 | },
104 | {
105 | question: "Choose the best definition for 'error'",
106 | a: "An incorrect action attributable to poor judgment, ignorance or inattention.",
107 | b: "Private developed and owned technology",
108 | c: "Something a computer program is supposed to do, often a reason to buy or upgrade software",
109 | d: "An incorrect action attributable to a mistake in the code.",
110 | correct: "a",
111 | },
112 | {
113 | question: "Choose the best definition for 'bug'",
114 | a: "A computer failure that aborts an application or freezes an operating system.",
115 | b: "Something a computer program is supposed to do, often a reason to buy or upgrade software",
116 | c: "An error or glitch on a computer program caused by a programmer’s mistake",
117 | d: "An incorrect action attributable to poor judgement, ignorance or inattention.",
118 | correct: "c",
119 | },
120 | {
121 | question: "Which of the following is not a feature of proprietary source software?",
122 | a: "You can add different features.",
123 | b: "You have to follow software vendor decisions",
124 | c: "Companies have more control of their data",
125 | d: "Vendor controls software updates",
126 | correct: "a",
127 | }
128 | ];;
129 |
130 | // Inicializar el quiz con los datos
131 | if (typeof initializeQuiz === 'function') {
132 | initializeQuiz(quizQuestions);
133 | } else {
134 | console.error("Error: El motor del quiz no está cargado correctamente");
135 | }
--------------------------------------------------------------------------------
/JS/despliegue_2.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Datos del quiz de Despliegue de Aplicaciones Web - 2º Trimestre
3 | * Archivo convertido al nuevo formato
4 | */
5 |
6 | // Definir los datos del quiz
7 | const quizQuestions = [
8 | {
9 | question: "¿Qué código de respuesta en un servidor FTP indica que la acción no se ha terminado, que debe obtenerse otra nueva respuesta para poder enviar otro comando?",
10 | a: "3XX",
11 | b: "2XX",
12 | c: "1XX",
13 | d: "4XX",
14 | correct: "c",
15 | },
16 | {
17 | question: "El puerto por defecto de conexión en un servicio ftp…",
18 | a: "Es el 20",
19 | b: "Es el 21",
20 | c: "Es el 22",
21 | d: "Es el 23",
22 | correct: "b",
23 | },
24 | {
25 | question: "En una transferencia FTP, ¿cuál es la orden que le envía el cliente para establecer una comunicación en modo activo?",
26 | a: "PORT",
27 | b: "PASV",
28 | c: "ACT",
29 | d: "LIST",
30 | correct: "a",
31 | },
32 | {
33 | question: "En un servidor FTP, es necesario que el cliente y el servidor…",
34 | a: "Puede tener distinta plataforma, puede ser de Windows a Linux y viceversa",
35 | b: "Es independiente de la plataforma, es un servicio que va por TCP",
36 | c: "Tengan la misma plataforma, Linux-Linux, Windows-Windows, …",
37 | d: "Deban estar en la misma red local",
38 | correct: "b",
39 | },
40 | {
41 | question: "¿Hace cuántos años de publicó el primer concepto de FTP, protocolo de transferencia de archivos?",
42 | a: "entre 10 y 20 años",
43 | b: "más de 50 años",
44 | c: "entre 21 y 45 años",
45 | d: "menos de 10 años",
46 | correct: "b",
47 | },
48 | {
49 | question: "¿Cuál de los siguientes programas es un servidor FTP?",
50 | a: "proftpd",
51 | b: "pureftpd y proftpd",
52 | c: "pureftpd",
53 | d: "vsftpd",
54 | correct: "b"
55 | },
56 | {
57 | question: "¿Cuál es el puerto por defecto del Apache Tomcat?",
58 | a: "80",
59 | b: "8080",
60 | c: "8082",
61 | d: "443",
62 | correct: "b",
63 | },
64 | {
65 | question: "¿Cuál de los siguientes servidores de aplicaciones web utilizan también Java?",
66 | a: "GlassFish",
67 | b: "GlassFish y WildFly",
68 | c: "WildFly",
69 | d: "Apache Tomcat",
70 | correct: "b",
71 | },
72 | {
73 | question: "¿Cuál es la extensión de un archivo ejecutable de Java?",
74 | a: ".exe",
75 | b: ".deb",
76 | c: ".jar",
77 | d: ".class",
78 | correct: "c",
79 | },
80 | {
81 | question: "¿Cuál es el código de respuesta de un servidor web, si no se tiene acceso a esa página solicitada?",
82 | a: "403",
83 | b: "200",
84 | c: "301",
85 | d: "404",
86 | correct: "a",
87 | },
88 | {
89 | question: "¿Cuál es el apartado de Apache Tomcat para gestionar las aplicaciones publicadas?",
90 | a: "Manager App",
91 | b: "Host Manager",
92 | c: "Server Status",
93 | d: "Admin Console",
94 | correct: "a",
95 | },
96 | {
97 | question: "¿Qué significan las siglas JDK en el mundo de Java?",
98 | a: "Java Development Kellogs",
99 | b: "Java Documentation Kit",
100 | c: "Java Development Kit",
101 | d: "Java Deployment Kit",
102 | correct: "c",
103 | },
104 | {
105 | question: "El sistema nombres DNS tiene un sistema tipo...",
106 | a: "lista",
107 | b: "árbol",
108 | c: "grafo",
109 | d: "tabla",
110 | correct: "b",
111 | },
112 | {
113 | question: "En un servidor de DNS el registro A, asocia a un dominio...",
114 | a: "la dirección IPV8",
115 | b: "la dirección IPV4",
116 | c: "la dirección IPV6",
117 | d: "un nombre de dominio",
118 | correct: "b",
119 | },
120 | {
121 | question: "En un servidor de DNS el registro MX, asocia a un dominio...",
122 | a: "la dirección ip asociada al servidor ftp",
123 | b: "la dirección ip asociada al servidor de correo",
124 | c: "la dirección ip asociada al servidor web",
125 | d: "la dirección ip asociada al servidor DNS",
126 | correct: "b",
127 | },
128 | {
129 | question: "En un servidor de DNS el registro CNAME...",
130 | a: "Las respuestas b y c son correctas",
131 | b: "Es el nombre canónico, canonical name",
132 | c: "Se utiliza para asociar alias para nombres de dominio",
133 | d: "Solo se utiliza para alias de subdominios",
134 | correct: "a",
135 | },
136 | {
137 | question: "En un servidor de DNS el registro NS..",
138 | a: "Es el registro inverso",
139 | b: "Dice dónde está el servidor de nombres que tiene asociado el dominio",
140 | c: "No existe ese registro",
141 | d: "Define los servidores de correo de un dominio",
142 | correct: "b",
143 | },
144 | {
145 | question: "En un servidor de DNS el registro PTR",
146 | a: "Es el registro inverso o también llamado indicador (puntero)",
147 | b: "Las tres respuestas anteriores son correctas",
148 | c: "Se encarga de traducir los registros de tipo A a dominio",
149 | d: "Se utiliza para resolver direcciones IPv6",
150 | correct: "a",
151 | },
152 | {
153 | question: "¿Qué compañía que proporciona servicio de DNS te protege frente a amenazas y cuida tu privacidad?",
154 | a: "Google",
155 | b: "La que te proporciona el ISP",
156 | c: "Quad9",
157 | d: "Cloudflare",
158 | correct: "c",
159 | },
160 | {
161 | question: "En un servidor de DNS el registro CNAME...",
162 | a: "Es el nombre canónico, canonical name",
163 | b: "Las respuestas a y c son correctas",
164 | c: "Se utiliza para asociar alias para nombres de dominio",
165 | d: "Se usa para asociar alias a direcciones IP",
166 | correct: "b",
167 | }
168 | ];;
169 |
170 | // Inicializar el quiz con los datos
171 | if (typeof initializeQuiz === 'function') {
172 | initializeQuiz(quizQuestions);
173 | } else {
174 | console.error("Error: El motor del quiz no está cargado correctamente");
175 | }
--------------------------------------------------------------------------------
/JS/despliegue_1.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Datos del quiz de Despliegue de Aplicaciones Web - 1º Trimestre
3 | * Archivo convertido al nuevo formato
4 | */
5 |
6 | // Definir los datos del quiz
7 | const quizQuestions = [
8 | {
9 | question: "¿Dónde podemos cambiar la prioridad de carga de un nombre de archivo de una web, es decir, que una página dependiendo del nombre se cargue antes que otra?",
10 | a: "priority.conf",
11 | b: "dir.conf",
12 | c: "pages.conf",
13 | d: "load.conf",
14 | correct: "a",
15 | },
16 | {
17 | question: "¿Qué directiva del Virtual Host se indica el correo de contacto del administrador?",
18 | a: "DocumentRoot",
19 | b: "ServerName",
20 | c: "ServerAdmin",
21 | d: "AdminContact",
22 | correct: "c",
23 | },
24 | {
25 | question: "¿Qué orden permite crear un vínculo en los módulos activados que hacen referencia a los módulos disponibles en un servidor web Apache?",
26 | a: "a2enmod",
27 | b: "a2ensite",
28 | c: "a2dismod",
29 | d: "a2addmod",
30 | correct: "a",
31 | },
32 | {
33 | question: "¿Cómo se denomina al modelo de arquitectura de red en el que los nodos que lo componen están al mismo nivel, no hay ninguna figura jerárquica?",
34 | a: "Modelo Cliente-Cliente",
35 | b: "Modelo P2P, Peer to Peer",
36 | c: "Modelo Cliente-Servidor",
37 | d: "Modelo de red jerárquica",
38 | correct: "b",
39 | },
40 | {
41 | question: "¿Cuál de las siguientes funciones es considerada básica para el servidor?",
42 | a: "Recuperar datos del servidor",
43 | b: "Aceptar conexiones con el cliente",
44 | c: "Enviará respuesta al usuario",
45 | d: "Asegurar la conexión con la base de datos",
46 | correct: "b",
47 | },
48 | {
49 | question: "¿Cuál de las siguientes plataformas sigue un modelo P2P?",
50 | a: "YouTube",
51 | b: "Spotify",
52 | c: "PeerTube",
53 | d: "Vimeo",
54 | correct: "c",
55 | },
56 | {
57 | question: "¿Cuál de los siguientes servidores Web es de Microsoft?",
58 | a: "Apache Web Server",
59 | b: "Nginx",
60 | c: "Internet Information Server",
61 | d: "LiteSpeed",
62 | correct: "c",
63 | },
64 | {
65 | question: "¿Cuál de los siguientes servidores permite la ejecución de aplicaciones en Java?",
66 | a: "Apache Tomcat",
67 | b: "thttpd",
68 | c: "Apache",
69 | d: "Node.js",
70 | correct: "a",
71 | },
72 | {
73 | question: "¿Cuál es el código de respuesta de un servidor web, cuando se hace una petición incorrecta, bad request?",
74 | a: "401",
75 | b: "402",
76 | c: "400",
77 | d: "403",
78 | correct: "c",
79 | },
80 | {
81 | question: "¿Cuál es el archivo principal de configuración del servidor web Apache?",
82 | a: "apache.conf",
83 | b: "ssl.conf",
84 | c: "apache2.conf",
85 | d: "httpd.conf",
86 | correct: "c",
87 | },
88 | {
89 | question: "Comando que permite desactivar módulos en Apache",
90 | a: "a2dismod modulo_apache",
91 | b: "adismod modulo_apache",
92 | c: "a2enmod modulo_apache",
93 | d: "a2deactivate modulo_apache",
94 | correct: "a",
95 | },
96 | {
97 | question: "¿En qué carpeta se encuentran los módulos disponibles del Apache?",
98 | a: "/etc/apace2/mods-available",
99 | b: "/etc/apache2/mods-disponibles",
100 | c: "/etc/apache2/mods-enabled",
101 | d: "/etc/apache2/modules-available",
102 | correct: "a",
103 | },
104 | {
105 | question: "¿En qué carpeta se encuentran las páginas disponibles del Apache (Virtual Host)?",
106 | a: "/etc/apache2/sites-available",
107 | b: "/etc/apache2/sites-enabled",
108 | c: "/etc/apache2/sites",
109 | d: "/etc/apache2/virtual-hosts",
110 | correct: "a",
111 | },
112 | {
113 | question: "El cifrado SSL con respecto a TLS",
114 | a: "TLS es una versión más antigua que SSL",
115 | b: "TLS y SSL son lo mismo, trabajan al mismo nivel",
116 | c: "SSL es una versión más antigua que TLS",
117 | d: "TLS es más rápido que SSL",
118 | correct: "c",
119 | },
120 | {
121 | question: "La última versión de SSL (Secure Socket Layer) es",
122 | a: "SSL 4.0",
123 | b: "SSL 2.5",
124 | c: "SSL 3.0",
125 | d: "SSL 3.1",
126 | correct: "c",
127 | },
128 | {
129 | question: "El principio básico de seguridad de la información que permite la privacidad de los datos se llama",
130 | a: "Confidencialidad",
131 | b: "Integridad",
132 | c: "Autenticación",
133 | d: "Autorización",
134 | correct: "a",
135 | },
136 | {
137 | question: "Mediante qué herramienta a nivel digital podemos garantizar la identidad de las partes",
138 | a: "Certificados digitales",
139 | b: "Criptografía asimétrica",
140 | c: "No se puede garantizar",
141 | d: "Firmas electrónicas",
142 | correct: "a",
143 | },
144 | {
145 | question: "El principio básico de seguridad de la información que permite que las partes no se desdigan se llama",
146 | a: "No repudio",
147 | b: "Repudio",
148 | c: "Autenticidad",
149 | d: "Confianza",
150 | correct: "a",
151 | },
152 | {
153 | question: "¿Cómo se llama al tercero de confianza responsable de autenticar las partes en una comunicación?",
154 | a: "Entidad Certificadora",
155 | b: "Entidad Verificación",
156 | c: "Entidad Registradora",
157 | d: "Autoridad Certificadora",
158 | correct: "a",
159 | },
160 | {
161 | question: "¿Cuál es el nombre por defecto del archivo de configuración del Virtual Host del Apache2?",
162 | a: "000default.conf",
163 | b: "000-default.html",
164 | c: "000-default.conf",
165 | d: "000-default-vhost.conf",
166 | correct: "c",
167 | }
168 | ];;
169 |
170 | // Inicializar el quiz con los datos
171 | if (typeof initializeQuiz === 'function') {
172 | initializeQuiz(quizQuestions);
173 | } else {
174 | console.error("Error: El motor del quiz no está cargado correctamente");
175 | }
--------------------------------------------------------------------------------
/JS/servidor_1.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Datos del quiz de Programación en Entorno Servidor - 1º Trimestre
3 | * Archivo convertido al nuevo formato
4 | */
5 |
6 | // Definir los datos del quiz
7 | const quizQuestions = [
8 | {
9 | question: "Qué anotación es necesaria para que el controlador inyecte a partir de un tipo de interface, la clase que implementan ese interface de acceso a datos",
10 | a: "@Controller",
11 | b: "@Autowired",
12 | c: "@Repository",
13 | d: "@Component",
14 | correct: "b",
15 | },
16 | {
17 | question: "En qué lugar del proyecto configuramos los enlaces a la base de datos",
18 | a: "en un fichero anotado con @Configuration",
19 | b: "En la carpeta templates",
20 | c: "En el controlador",
21 | d: "en el fichero application.properties",
22 | correct: "d",
23 | },
24 | {
25 | question: "Cuando los datos vienen de un formulario lo normal es que la ruta del método venga anotada con",
26 | a: "@Controller",
27 | b: "@GetMapping",
28 | c: "@PostMapping",
29 | d: "@RestController",
30 | correct: "c",
31 | },
32 | {
33 | question: "Qué motor de Persistencia usa Spring Data Jpa?",
34 | a: "JDBC",
35 | b: "Ibatis",
36 | c: "EclipseLink",
37 | d: "Hibernate",
38 | correct: "d",
39 | },
40 | {
41 | question: "Qué anotación se usa para las clases que implementan los interfaces del Dao",
42 | a: "@Repository",
43 | b: "@GetMapping",
44 | c: "@RestController",
45 | d: "@Controller",
46 | correct: "a",
47 | },
48 | {
49 | question: "De qué clase se hereda para obtener los métodos de persistencia en los repositorios",
50 | a: "Repository",
51 | b: "CrudRepository",
52 | c: "SortingRepository",
53 | d: "PagingRepository",
54 | correct: "b",
55 | },
56 | {
57 | question: "Si tengo este atributo en Thymeleaf
, qué expresión es correcta para el atributo de cliente categoria",
58 | a: "${cliente.categoria}",
59 | b: "${item.categoria}",
60 | c: "*{cliente.categoria}",
61 | d: "${categoria}",
62 | correct: "a",
63 | },
64 | {
65 | question: "Para trabajar con JPA la clase la debemos anotar con",
66 | a: "@Repository",
67 | b: "@Id",
68 | c: "@Table",
69 | d: "@Entity",
70 | correct: "d",
71 | },
72 | {
73 | question: "La arquitectura sobre la que se construyen las aplicaciones Web se denomina",
74 | a: "Ninguna de las anteriores",
75 | b: "Modelo, Vista, Controlador",
76 | c: "Modelo, Dao, Controlador",
77 | d: "Modelo, Versión, Componentes",
78 | correct: "b",
79 | },
80 | {
81 | question: "Para cerrar una sesión se usa el método de HttpSession",
82 | a: "invalidate()",
83 | b: "close()",
84 | c: "removeAttribute()",
85 | d: "flush()",
86 | correct: "a",
87 | },
88 | {
89 | question: "Qué anotación en Spring MVC permite obtener un parámetro de la URL?",
90 | a: "@PathVariable",
91 | b: "@RequestParam",
92 | c: "@QueryParam",
93 | d: "@UrlParam",
94 | correct: "a",
95 | },
96 | {
97 | question: "Cuál de los siguientes archivos es fundamental para configurar las dependencias de un proyecto Spring Boot?",
98 | a: "pom.xml",
99 | b: "spring.properties",
100 | c: "dependencies.xml",
101 | d: "persistence.xml",
102 | correct: "a",
103 | },
104 | {
105 | question: "Cuál es el puerto predeterminado de un servidor Spring Boot al iniciar?",
106 | a: "3000",
107 | b: "8085",
108 | c: "9000",
109 | d: "8080",
110 | correct: "d",
111 | },
112 | {
113 | question: "Qué anotación se utiliza para especificar el identificador principal de una entidad en JPA?",
114 | a: "@Column",
115 | b: "@PrimaryKey",
116 | c: "@GeneratedValue",
117 | d: "@Id",
118 | correct: "d",
119 | },
120 | {
121 | question: "Cuál es la anotación que se usa para definir una consulta personalizada en Spring Data JPA?",
122 | a: "@Query",
123 | b: "@CustomQuery",
124 | c: "@SQL",
125 | d: "@NativeQuery",
126 | correct: "a",
127 | },
128 | {
129 | question: "Cuantos atributos de instancia se pueden asignar a la anotación @Id en una entidad?",
130 | a: "Más de uno",
131 | b: "Uno",
132 | c: "Esta anotación no existe",
133 | d: "Ninguno",
134 | correct: "b",
135 | },
136 | {
137 | question: "Cómo se puede definir una búsqueda por propiedades de entidad en un repositorio de Spring Data JPA?",
138 | a: "Usando el método 'findBy' seguido del nombre de la propiedad (por ejemplo, 'findByNombre')",
139 | b: "Implementando el método manualmente",
140 | c: "Usando @EntityManager y realizando la búsqueda",
141 | d: "Con @Query, haciendo la select y poniendo un método que lo sustente.",
142 | correct: "a",
143 | },
144 | {
145 | question: "Cuál es la expresión correcta en Thymeleaf para mostrar una variable de contexto en una plantilla?",
146 | a: "{variable}",
147 | b: "${variable}",
148 | c: "#{variable}",
149 | d: "*{variable}",
150 | correct: "b",
151 | },
152 | {
153 | question: "Qué opción describe mejor el uso de 'th:each' en Thymeleaf?",
154 | a: "Para mostrar el valor de una variable",
155 | b: "Para definir condiciones",
156 | c: "Para iterar sobre una lista o colección",
157 | d: "Para insertar una plantilla dentro de otra",
158 | correct: "c",
159 | },
160 | {
161 | question: "Las clases que implementan un Dao de acceso a datos y que se ponen en contacto con un Repositorio de Datos, estén donde estén esos datos de anota con?",
162 | a: "@Repository",
163 | b: "@Configuration",
164 | c: "@RequestMapping",
165 | d: "@Controller",
166 | correct: "a",
167 | }
168 | ];;
169 |
170 | // Inicializar el quiz con los datos
171 | if (typeof initializeQuiz === 'function') {
172 | initializeQuiz(quizQuestions);
173 | } else {
174 | console.error("Error: El motor del quiz no está cargado correctamente");
175 | }
--------------------------------------------------------------------------------
/JS/dwi_2.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Datos del quiz de Diseño de Interfaces - 2º Trimestre
3 | * Archivo convertido al nuevo formato
4 | */
5 |
6 | // Definir los datos del quiz
7 | const quizQuestions = [
8 | {
9 | question: "¿Qué es un documento HTML?",
10 | a: "Un lenguaje de programación para crear aplicaciones móviles",
11 | b: "Un lenguaje de base de datos.",
12 | c: "Un formato de texto plano que define la estructura de una página web.",
13 | d: "Un tipo de archivo de imagen.",
14 | correct: "c"
15 | },
16 | {
17 | question: "¿Dónde se colocan normalmente los enlaces a archivos CSS en un documento HTML?",
18 | a: "Dentro de la etiqueta ",
19 | b: "Dentro de la etiqueta ",
20 | c: "Dentro de la etiqueta ",
21 | d: "Dentro de la etiqueta