GraphQL Basics Training Course

Overview

GraphQL, developed by Facebook in 2012 and then open-sourced in 2015, is a data query language for better data fetching performance with mobile devices. It provides an alternative to REST and gives clients the power to ask for exactly what they need, nothing more and nothing less, from databases on a server.

In this instructor-led, live training, participants will learn the fundamentals of GraphQL as they step through the creation of a simple API with GraphQL.

By the end of this training, participants will be able to:

  • Understand what GraphQL is and what distinguishes it from REST.
  • Understand top-level GraphQL terms.
  • Set up a GraphQL coding environment.
  • Build and improve a GraphQL API.

Format of the Course

  • Part lecture, part discussion, exercises and heavy hands-on practice.

Note

  • To request a customized training for this course, please contact us to arrange.

Requirements

  • Understanding of programming and databases
  • Understanding of Javascript basics

Audience

  • Web developers
  • Administrators

Course Outline

Introduction

  • What is GraphQL?
  • History
  • GraphQL vs. REST
  • Main features and benefits for clients
  • Security features

Understanding Core Concepts

  • Schema Definition Language (SDL)
  • GraphQL terms (types, fields, schema, mutations, promises, subscriptions)

Understanding the Mechanism

  • Architecture (clients, server)
  • Tools (GraphiQL, Launchpad)

Setting up the Environment

  • Building a GraphQL server
  • Building GraphQL features in a GraphQL server
  • Creating and defining a GraphQL application schema
  • Executing your first GraphQL query

Working with GraphQL

  • Fetching data with queries from multiple databases
  • Working with mutations to add, update, and delete items
  • Keeping the client in sync with mutations
  • Using GraphQL subscriptions to build a newsfeed
  • Advanced queries with arguments, aliases, and fragments

Troubleshooting

Summary and Conclusion

Leave a Reply

Your email address will not be published. Required fields are marked *