Building blocks of GraphQL:
Queries: Clients send these to specify the data they need. An umbrella term for query (fetch data), mutation (modify data) and subscription (subscribe to events such as creation of a particular record).
Schema: The contract for client-server communication. Specifies what queries clients are allowed to make, the types of data that can be fetched and relationships between types. Defined using GraphQL’s Schema Definition Language (SDL).
Resolvers: Every field has a resolver function, which specifies how that field is connected to the back end and fetches data for that field from a database(s)/ microservice/ existing API. Don’t they sound like our lovely moms, who always know where to find something?