— Query Language for your API developed at Facebook. — Polyglot implementation for client and server - Java, Javascript, Python, etc… — Reduces API requests needed and only gives you that data you asked for. What is GraphQL?
1. Add Gradle Plugin. 2. Add schema definition to app in a JSON file. 3. Add queries to files with a “.graphql” file extension. 4. Use autogenerate classes from the “.graphql” files to make calls. Integrating Apollo Android Client
— GraphQL Object type — Scalar types (String, Int, Float, Boolean) — List type — Interface type — Enum type — Union type — Input Object type GraphQL Type System
— Client and server Java GraphQL implementations are not stable. — No Kotlin only GraphQL implementation. — Learning curve. — Need to setup GraphQL server on top of your infrastructure. This requires more work. Disadvantages