El bloque fundamental de el schema en GraphQL son los tipos. A través del sistema de tipado de GraphQL podemos definir las estructuras de nuestros datos y el tipo de cada propiedad de la que se compone nuestro servicio web.
En general, podemos decir que existen dos elementos importantes en el sistema de tipado, los tipos objetos y los tipos escalares, los primeros definen las estructuras de nuestro servicio web, en CódigoFacilito por ejemplo podríamos tener el tipo objeto Curso, Video, Usuario y en la definición de cada una de estas estructuras colocaríamos las propiedades que las componen, por ejemplo
type Course{
title: String
id: ID!
user: User!
}
Las estructuras objeto están compuestas por sub campos que pueden ser de dos tipos, otras estructuras objeto para especificar relaciones entre nuestros datos y los tipos escalares.
En este contexto, nos referimos a escalar, o scalar en inglés, para distinguir a las propiedades atómicas, es decir, la unidad indivisible. En GraphQL los tipos escalares no tienen sub campos, según la documentación podemos pensar en ellos como las hojas de nuestro esquema, los datos finales como pueden ser cadenas, números, booleanos, entre otros.
Los tipos escalares vienen predefinidos en GraphQL, aunque podemos definir más, y son estos:
Int: Un entero de 32 bits Float: Un valor decimal con punto flotante. value. String: Una secuencia de caracteres Boolean: Un valor que puede ser verdadero o falso ID: Un identificador único de la estructura
Eventualmente, cualquier estructura que definamos en nuestro esquema, tienen que representarse con alguno de estos tipos escalares, en el caso del ejemplo anterior podemos ver que tenemos los tipos escalares title que es una cadena y id que es un identificador. El tipo User que es objeto, deberá tener sus propios tipos escalares.
-
Módulo 1 | 8 clases
Introducción
expand_more-
play_circle_outline
Clase 1
Presentación del curso
-
play_circle_outline
Clase 2
Qué aprenderé en este curso
-
play_circle_outline
Clase 3
Qué es un servicio web
-
play_circle_outline
Clase 4
Qué es GraphQL
-
play_circle_outline
Clase 5
Servidor HTTP con Express
-
play_circle_outline
Clase 6
Definir el schema
-
play_circle_outline
Clase 7
Hola mundo con GraphQL
-
play_circle_outline
Clase 8
Tipos objeto en el schema
-
-
Módulo 2 | 3 clases
Fundamentos de GraphQL
expand_more -
Módulo 3 | 12 clases
Mi primer servicio web con GraphQL
expand_more-
play_circle_outline
Clase 1
Preparando el proyecto
-
play_circle_outline
Clase 2
GraphQL Schema Language
-
play_circle_outline
Clase 3
Mocking de datos
-
play_circle_outline
Clase 4
Preparando las consultas
-
play_circle_outline
Clase 5
GraphiQL
-
play_circle_outline
Clase 6
Consultar recurso individual
-
play_circle_outline
Clase 7
Variables de consulta
-
play_circle_outline
Clase 8
Mutaciones
-
play_circle_outline
Clase 9
Actualizar registros
-
play_circle_outline
Clase 10
Input types
-
play_circle_outline
Clase 11
Eliminar registros
-
play_circle_outline
Clase 12
Paginación
-
-
Módulo 4 | 6 clases
Apollo GraphQL
expand_more -
Módulo 5 | 10 clases
Base de datos
expand_more-
play_circle_outline
Clase 1
Configurando la base de datos
-
play_circle_outline
Clase 2
Modelo
-
play_circle_outline
Clase 3
Configurar GraphQL con express
-
play_circle_outline
Clase 4
Definición de tipos organizada por archivos
-
play_circle_outline
Clase 5
Resolvers modularizados
-
play_circle_outline
Clase 6
Crear registros
-
play_circle_outline
Clase 7
Consultar registros
-
play_circle_outline
Clase 8
Actualizar registros
-
play_circle_outline
Clase 9
Eliminar registros
-
play_circle_outline
Clase 10
Paginación
-
-
Módulo 6 | 4 clases
Relaciones
expand_more -
Módulo 7 | 6 clases
Autenticación
expand_more