Saltar al contenido

GAC017 Informática III: Ciencia de datos y aplicaciones web

GAC Informática · Tema 3

Entrenar
3.1

Qué es este módulo y cómo se evalúa

GAC017 es el módulo de computación de Nivel III: lo que hay detrás de un sitio web. Seis unidades cubren el back-end JavaScript, bases de datos, SQL, conectar ambos y una primera introducción a la ciencia de datos.

La evaluación es totalmente práctica: una base de datos que tú diseñes y construyas, una aplicación web que se comunique con ella, un proyecto de análisis de datos y tareas continuas, generalmente distribuidas a lo largo de la mayor parte del semestre en lugar de concentrarse al final.

  • El trabajo se juzga por si funciona y responde a una pregunta, no por la cantidad de código.
  • ⚠ Diseña la base de datos antes de escribir una consulta. Casi todos los problemas posteriores son problemas de tablas disfrazados de consultas.

Cada ejemplo de SQL aquí se ejecuta en el entorno de código propio del sitio, y la referencia de SQL allí es la versión más completa de estas notas.

Vocabulario Entrenar
Inglés Chino Pinyin
back end/bæk end/ 后端 hòu duān
server/ˈsɜːvə/ 服务器 fú wù qì
request/rɪˈkwest/ 请求 qǐng qiú
response/rɪˈspɒns/ 响应 xiǎng yìng
SQL/ˌes kjuː ˈel/ 结构化查询语言 jié gòu huà chá xún yǔ yán
3.1

JavaScript para el back-end de una aplicación web

Syllabus

Unidad 1 de 6 en GAC017 Computación III: Ciencia de Datos y Aplicaciones Web (Nivel III). El módulo se imparte durante aproximadamente 40 horas de clase más 20 horas de estudio independiente, y se evalúa en el centro docente con moderación por parte de ACT — no hay examen externo.

Propósito del módulo: Al finalizar este módulo, los estudiantes deberán ser capaces de crear una aplicación web. Aprenderán sobre la programación del back-end y cómo desarrollar un sitio web dinámico. Podrán utilizar SQL para analizar datos de múltiples tablas a fin de tomar decisiones informadas.

Resultados del módulo hacia los cuales trabaja esta unidad:

Objetivo de Aprendizaje GAC017.1: Comprender los componentes básicos de una aplicación web.

Fuente: Plan de estudios Cambridge International

  • El front-end se ejecuta en el navegador; el back-end se ejecuta en un servidor y contiene lo que el navegador no debe ver.
  • Un servidor recibe una petición y devuelve una respuesta. Ese bucle es toda la arquitectura.
  • Una API es la forma acordada de esas peticiones y respuestas.
  • ⚠ Cualquier dato secreto: una contraseña, una clave, pertenece solo al back-end. El código en un navegador es legible por cualquier persona que visite el sitio.
Vocabulario Entrenar
Inglés Chino Pinyin
database/ˈdeɪtəbeɪs/ 数据库 shù jù kù
web app/web æp/ 网络应用 wǎng luò yìng yòng
data analysis project/ˈdeɪtə əˈnæləsɪs ˈprɒdʒekt/ 数据分析项目 shù jù fēn xī xiàng mù
front end/frʌnt end/ 前端 qián duān
API/ˌeɪ piː ˈaɪ/ 应用程序接口 yìng yòng chéng xù jiē kǒu
route/ruːt/ 路由 lù yóu
Validate input/ˈvælɪdeɪt ˈɪnpʊt/ 校验输入 jiào yàn shū rù
SQL injection/ˌes kjuː ˈel ɪnˈdʒekʃn/ SQL 注入 SQL zhù rù
relational database/rɪˈleɪʃənl ˈdeɪtəbeɪs/ 关系数据库 guān xì shù jù kù
tables/ˈteɪblz/ 表 biǎo
primary key/ˈpraɪməri kiː/ 主键 zhǔ jiàn
foreign key/ˈfɒrən kiː/ 外键 wài jiàn
Normalisation/ˌnɔːməlaɪˈzeɪʃn/ 规范化 guī fàn huà
entities/ˈentɪtiz/ 实体 shí tǐ
3.2

Programación del back-end

Syllabus

Unidad 2 de 6 en GAC017 Informática III: Data Science y Aplicaciones Web (Nivel III). El módulo se imparte durante aproximadamente 40 horas de clase más 20 horas de estudio independiente, y se evalúa en el centro docente bajo la moderación de ACT — no hay examen externo.

Los resultados del módulo a los que contribuye esta unidad son:

Objetivo de Aprendizaje GAC017.2: Adaptar una aplicación de back-end utilizando lenguajes de scripting para interactuar con bases de datos.

Fuente: Plan de estudios Cambridge International

  • Una ruta asocia una URL al código que se ejecuta cuando se solicita esa URL.
  • Valida la entrada en el servidor. Comprobar en el navegador es una comodidad para usuarios honestos, no una defensa.
  • Nunca construyas una consulta uniendo cadenas con entradas de usuario. Así ocurre la inyección SQL, y es la falla de seguridad que esta unidad existe para prevenir.
  • Devuelve un estado honesto: 200 para éxito, 400 para una solicitud incorrecta, 404 para algo que no existe.
3.3

Introducción a las bases de datos

Syllabus

Unidad 3 de 6 en GAC017 Informática III: Ciencia de Datos y Aplicaciones Web (Nivel III). El módulo se imparte durante aproximadamente 40 horas de clase más 20 horas de estudio independiente, y es evaluado en el centro docente con moderación por ACT — no hay examen externo.

Los resultados del módulo hacia los cuales trabaja esta unidad:

Objetivo de Aprendizaje GAC017.3: Crear una base de datos con múltiples tablas.

Fuente: Plan de estudios Cambridge International

  • Una base de datos relacional 关系数据库 almacena datos en tablas 表 formadas por filas y columnas.
  • Una clave primaria identifica una fila de forma única. Una clave foránea apunta a la clave primaria de otra tabla, y ese puntero es la relación.
  • La normalización elimina datos duplicados para que un hecho viva en un solo lugar.
  • Diseña preguntándote cuáles son las entidades, y luego qué las conecta.

Ejemplo resuelto. Una escuela quiere almacenar estudiantes, cursos y quién cursa qué.

Dos tablas no pueden hacerlo: un estudiante cursa muchos cursos y un curso tiene muchos estudiantes. La relación muchos a muchos necesita una tercera tabla — matrículas — cuyas filas sean pares (estudiante, curso).

Reconocer que se requiere esta tercera tabla es la idea de base de datos más útil del módulo, y es donde suelen fallar los primeros diseños.

3.4

SQL para programación del back-end

Syllabus

Unidad 4 de 6 en GAC017 Informática III: Ciencia de Datos y Aplicaciones Web (Nivel III). El módulo se imparte durante aproximadamente 40 horas de clase más 20 horas de estudio independiente, y se evalúa en el centro docente bajo la moderación de ACT — no hay examen externo.

Los resultados del módulo a los que contribuye esta unidad son:

Objetivo de Aprendizaje GAC017.4: Analizar datos utilizando SQL para tomar decisiones.

Fuente: Plan de estudios Cambridge International

  • SQL hace preguntas a una base de datos. SELECT … FROM … WHERE … es el núcleo.
  • JOIN combina filas de dos tablas mediante una clave coincidente.
  • GROUP BY con COUNT, SUM o AVG responde a preguntas de "cuántos por…".
  • ⚠ WHERE filtra filas antes de agrupar; HAVING filtra grupos después. Usar el equivocado es el error clásico de SQL, y suele devolver una respuesta plausible pero incorrecta.

Ejemplo resuelto. ¿Qué cursos tienen más de 20 estudiantes?

SELECT c.title, COUNT(*) AS students
FROM enrolments e
JOIN courses c ON c.id = e.course_id
GROUP BY c.title
HAVING COUNT(*) > 20;

El conteo es una propiedad del grupo, por lo que el filtro es HAVING. Escrito con WHERE no se ejecuta — y cuando un error similar sí se ejecuta, responde silenciosamente a una pregunta diferente.

Vocabulario Entrenar
Inglés Chino Pinyin
JOIN/dʒɔɪn/ 连接 lián jiē
GROUP BY/ɡruːp baɪ/ 分组 fēn zǔ
parameterised query/ˌpærəˈmetəraɪzd ˈkwɪərɪ/ 参数化查询 cān shù huà chá xún
3.5

Conectar JavaScript con SQL

Syllabus

Unidad 5 de 6 en GAC017 Informática III: Ciencia de Datos y Aplicaciones Web (Nivel III). El módulo se imparte durante aproximadamente 40 horas de clase más 20 horas de estudio independiente, y se evalúa en el centro docente bajo la moderación de ACT — no hay examen externo.

Los resultados del módulo hacia los cuales trabaja esta unidad:

Objetivo de Aprendizaje GAC017.2: Adaptar una aplicación de back-end utilizando lenguajes de script para interactuar con bases de datos.

Objetivo de Aprendizaje GAC017.4: Analizar datos utilizando SQL para tomar decisiones.

Fuente: Plan de estudios Cambridge International

  • El back-end toma una petición, ejecuta una consulta parametrizada y devuelve las filas como datos, normalmente en formato JSON.
  • Parametrizado significa que los valores viajan separados del texto de la consulta. Eso es lo que hace que la inyección sea imposible en lugar de improbable.
  • Maneja el caso vacío. Una consulta que no devuelve filas es normal, y una página que falla por ello no está terminada.
Vocabulario Entrenar
Inglés Chino Pinyin
JSON/ˈdʒeɪsn/ 数据交换格式 shù jù jiāo huàn gé shì
Data science/ˈdeɪtə ˈsaɪəns/ 数据科学 shù jù kē xué
Descriptive statistics/dɪˈskrɪptɪv stəˈtɪstɪks/ 描述性统计 miáo shù xìng tǒng jì
visualisation/ˌvɪʒuːəlaɪˈzeɪʃn/ 可视化 kě shì huà
Correlation is not causation/ˌkɒrɪˈleɪʃn ɪz nɒt kɔːˈseɪʃn/ 相关不等于因果 xiāng guān bù děng yú yīn guǒ
3.6

Ciencia de datos

Syllabus

Unidad 6 de 6 en GAC017 Cómputo III: Data Science y Aplicaciones Web (Nivel III). El módulo se imparte durante aproximadamente 40 horas de clase más 20 horas de estudio independiente, y se evalúa en el centro docente bajo la moderación de ACT — no hay examen externo.

Los resultados del módulo hacia los cuales contribuye esta unidad:

Objetivo de Aprendizaje GAC017.5: Aplicar Data Science a otras áreas académicas.

Fuente: Plan de estudios Cambridge International

  • La ciencia de datos convierte datos en una decisión, y la mayor parte del trabajo ocurre antes de la análisis: limpieza, unión y comprobación de lo que los datos pueden soportar.
  • La estadística descriptiva resume; una visualización muestra la forma; ninguno prueba una causa.
  • La correlación no implica causalidad — la frase que todo proyecto de datos necesita y que la mayoría omite.
  • Declara las limitaciones de tu conjunto de datos. Un proyecto que nombra lo que sus datos no pueden mostrar obtiene mejores puntuaciones que uno que afirma silenciosamente más de lo debido.

Lecciones interactivas sobre este tema

Trátalo paso a paso, con ejercicios de verificación instantánea.

Más temas en GAC Informática

Iniciar sesión o crear cuenta

IGCSE, A-Level & AP