Обучающие видео » Компьютерные видеоуроки и обучающие интерактивные DVD » Программирование (видеоуроки)
Server-Side GraphQL in Node.jsГод выпуска: 2019
Производитель: frontendmasters.com
Сайт производителя:
https://frontendmasters.com/courses/server-graphql-nodejs/Автор: Scott Moss
Продолжительность: 3 hours, 24 min
Тип раздаваемого материала: Видеоклипы
Язык: Английский
Описание: Learn everything you need to create a GraphQL API on the server in Node.js with Apollo Server. You'll start with a schema that includes type definitions, queries, and mutations. Then, build the resolvers needed to get the values for the API. Finally, move onto advanced features like interfaces and unions, all the way down to how relationships work in resolvers.
Published: November 25, 2019
Course Slides
https://static.frontendmasters.com/resources/2019-10-14-full-stack-graphql/server-graphql-nodejs.pdfCourse Code
https://github.com/FrontendMasters/fullstack-graphqlSpecial note Access to courses was provided by one of the rutracker users who wants to stay anonymous let's say all thanks to him, and i just downloaded it[spoiler="Содержание"]
Table of Contents
Introduction
Introduction
00:00:00 - 00:11:48
Introduction
Scott Moss defines GraphQL as a declarative query language, explains how GraphQL works both on the client and the server side. -
https://static.frontendmasters.com/resources/2019-10-14-full-stack-graphql/intro-...rver-graphql.pdfSchemas
00:11:49 - 00:14:01
Schemas
Scott explains that in order to create a GraphQL server, a schema must first be created using a schema definition language, or SDL, and reviews the basic parts of a schema.
GraphQL Server
00:14:02 - 00:26:36
GraphQL Server
Scott demonstrates how to build a basic GraphQL server by coding typeDefs, resolvers, and an Apollo server. The goal of this section is to demonstrate the simple way GraphQL functions before diving into more detailed explanations. -
https://github.com/FrontendMasters/fullstack-graphqlQueries & Resolvers
Query Types
00:26:37 - 00:33:29
Query Types
Scott defines query types as object types, and demonstrates how to build a query. Questions from the audience about syntax and the use of queries are also answered. -
https://static.frontendmasters.com/resources/2019-10-14-full-stack-graphql/intro-...rver-graphql.pdfResolvers
00:33:30 - 00:44:58
Resolvers
Scott defines resolvers as functions responsible for returning values for fields on a type, and explains that to create a server with GraphQL a query type with a field and a resolver for that field are needed.
Query Types Exercise
00:44:59 - 00:52:35
Query Types Exercise
After Scott walks through the code repository and specifies which files will be updated over the course of the workshop, students are instructed to create a query type based off an array. -
https://github.com/FrontendMasters/fullstack-graphqlQuery Types Solution
00:52:36 - 01:05:58
Query Types Solution
Scott live codes the solution to the query types exercise.
Resolvers Q&A
01:05:59 - 01:16:20
Resolvers Q&A
Scott explains that each field has its own resolver, demonstrates what default resolvers are, and answers questions from the audience about top level and field specific resolvers.
Arguments & Input Types
Arguments
01:16:21 - 01:21:28
Arguments
Scott explains that arguments allow clients to pass variables along with queries, and that they can be used in resolvers to get data. Arguments must be defined in the schema, but can be added to any field. -
https://static.frontendmasters.com/resources/2019-10-14-full-stack-graphql/intro-...rver-graphql.pdfInput Types
01:21:29 - 01:25:06
Input Types
Scott defines input types as types for arguments, and how all the fields in input types can be other input types or scholars.
Arguments & Input Types Demo
01:25:07 - 01:30:56
Arguments & Input Types Demo
Scott demonstrates how to code a type, an input type, how to query a type, and how to add arguments to a resolver.
Arguments & Input Types Exercise
01:30:57 - 01:37:49
Arguments & Input Types Exercise
Students are instructed to create an input type, add arguments to queries, and use arguments in the query field resolvers to filter data. Scott answers questions from the audience about querying.
Arguments & Input Types Solution
01:37:50 - 01:48:28
Arguments & Input Types Solution
Scott live codes the solution to the arguments and input type exercise.
Mutations
Mutation Type
01:48:29 - 01:57:35
Mutation Type
Scott explains that a mutation is a type on a schema that defines operations clients can perform to create, update, or delete data. -
https://static.frontendmasters.com/resources/2019-10-14-full-stack-graphql/intro-...rver-graphql.pdfMutation Exercise
01:57:36 - 01:59:43
Mutation Exercise
Students are instructed to define a mutation type in the schema, add fields to the mutation type, create input types or mutation field arguments and create resolvers for the mutation fields.
Mutation Solution
01:59:44 - 02:08:06
Mutation Solution
Scott live codes the solution to the mutation exercise.
Advanced SDL
Enums
02:08:07 - 02:13:03
Enums
Scott explains that enums are a set of discrete values that allow limiting a field to a few different options, and demonstrates how to add an enum to a type. -
https://static.frontendmasters.com/resources/2019-10-14-full-stack-graphql/intro-...rver-graphql.pdfInterfaces
02:13:04 - 02:21:49
Interfaces
Scott explains that if there are two or more types with common fields, an interface allows types to share fields, and allows the client to make one query instead of multiple when looking for a field. An interface can resolve all the types that belongs to it.
Interfaces Q&A
02:21:50 - 02:27:51
Interfaces Q&A
Scott answers questions from the audience regarding interfaces and data sources, how to uncover the type of a type, and the GraphQL syntax.
Unions
02:27:52 - 02:34:31
Unions
Scott explains that unions are similar to interfaces, because they give access to types. However, unlike interfaces, they can access types that have no fields in common with a single query. Questions from the audience are answered.
Relationships
02:34:32 - 02:38:06
Relationships
Scott explains that in GraphQL, APIs are set of nodes linked to other nodes, and defines a relationship to be adding a type as a field value on another type.
Relationships Demo
02:38:07 - 02:48:42
Relationships Demo
Scott demonstrates how to use field level resolvers to write relationships between types.
Relationships Exercise
02:48:43 - 02:51:12
Relationships Exercise
Students are instructed to add new fields on types that reference other types and create resolvers for field types that point to other types.
Relationships Solution: Adding Fields on Types
02:51:13 - 02:54:34
Relationships Solution: Adding Fields on Types
Scott live codes the first part of the solution to the relationships exercise by first adding new fields to different types.
Relationships Solution: Adding Resolvers
02:54:35 - 03:07:50
Relationships Solution: Adding Resolvers
Scott continues to live code the solution to the relationships exercise by adding field resolvers, and making the querying of data possible.
Relationships Q&A
03:07:51 - 03:12:40
Relationships Q&A
Scott answers questions from the audience regarding queries in GraphQL, field level resolvers, and the rthe order queries run in.
Authentication
03:12:41 - 03:18:33
Authentication
Scott demonstrates how to add authentication to an Apollo server, and explains that the level of authentication depends on what needs to be protected within the schema. Request level caching to avoid querying the database each time is also discussed.
Wrapping Up
Wrapping Up
03:18:34 - 03:24:48
Wrapping Up
Scott answers questions about concurrency, resolvers, and GraphQL gateways, shares open source projects using GraphQL (Prisma Hesura, GraphQL yoga etc.), and wraps up the course.
[/spoiler]
Файлы примеров: присутствуют
Формат видео: MP4
Видео: AVC, 1920x1080, 16:9, 30fps, ~1200kb/s
Аудио: AAC, 44.1kHz, ~244kb/s, stereo
[spoiler="Скриншоты"]

[/spoiler]