for over 25 years - 4x Founder - Former Director of Developer Relations for Contentful - Former Director of Developer Relations and Training for Appcelerator (now tidev.io) - Author of 4.5 books - Curious Computer Scientist always looking for challenges and opportunities to bring value - Instrumental Guitarist 🎸 (https://alco.ws/spotify) Hi there! I’m Alco
Mature - It’s an architectural style - Based on functionality of the HTTP Protocol - Stateless - Uses HTTP Verbs to define actions (GET, POST, PUT, DELETE) - It was designed to solve the problem of accessing data resources - REST came to replace technologies like S.O.A.P. and others
not a product or a technology, it is a technical specification - Creates a new paradigm for having conversations with your data sources - It offers libraries for virtually any programming language - While REST was designed to solve the “server” problem, GraphQL was designed to solve the problem of who is consuming the data resources - A single request can handle multiple operations - It is self-documenting - It is divided into two main areas: - The GraphQL Server - Implements data definitions, ORMs, data relationships, etc. - The GraphQL Client - Allows for a rich JSON-like language for building requests that return predictable result sets
- It’s not a technology, it’s a specification - Offers client and server libraries for multiple languages - It’s Database-agnostic - Designed for client-side flexibility - Optimized for Mobile use