Technical Insights: Introduction to GraphQL
By Johnson Liang, Front-end Engineer, Appier
At Appier, we have been using GraphQL for around a year. GraphQL drives client-server communications for one of our main AI platforms, Aixon. We have benefitted a lot from GraphQL’s characteristics, such as the concept of “object fields” and its resolvers. Its declarative approach to whitelist all inputs and outputs makes it a great tool to build programming interfaces.
This presentation is designed to be an introduction to GraphQL and was originally delivered to other internal product teams in Appier. The talk is specifically designed for Node.JS or Python developers that have never tried GraphQL before. It provides succinct code examples in both programming languages to guide the audience through all the essential topics they should know in order to start building their own GraphQL schema and to run a GraphQL API server.
There are already quite a lot presentations on the internet explaining the high-level concepts of GraphQL. In this talk, I have put more emphasis on the actual source code required to get GraphQL running, providing a more pragmatic perspective to understanding GraphQL.
The talk covers the following topics:
- Fundamental parts of a GraphQL server
- Defining API shape – GraphQL schema
- Resolving object fields
- Mutative APIs
- Making requests to a GraphQL server
- Solving N+1 query problem: dataloader
Editor’s note: Speaker notes are available with Google Slides.