python and graphql
play

Python and GraphQL Alec MacQueen Software Engineer @ Administrate - PowerPoint PPT Presentation

Python and GraphQL Alec MacQueen Software Engineer @ Administrate Alec MacQueen - @macqueenism - Europython 2018 Alec MacQueen - @macqueenism - Europython 2018 vs Alec MacQueen - @macqueenism - Europython 2018 Maintainability Coupling


  1. Python and GraphQL Alec MacQueen Software Engineer @ Administrate Alec MacQueen - @macqueenism - Europython 2018

  2. Alec MacQueen - @macqueenism - Europython 2018

  3. vs Alec MacQueen - @macqueenism - Europython 2018

  4. ● Maintainability ● Coupling of frontend and backend ● Cognitive load ● Not enough thought given to our API Alec MacQueen - @macqueenism - Europython 2018

  5. What is GraphQL? Alec MacQueen - @macqueenism - Europython 2018

  6. GraphQL is a query language for APIs and a runtime for fulfilling those queries with your existing data. graphql.org Alec MacQueen - @macqueenism - Europython 2018

  7. Not language specific Alec MacQueen - @macqueenism - Europython 2018

  8. A single endpoint Alec MacQueen - @macqueenism - Europython 2018

  9. Get what you want Alec MacQueen - @macqueenism - Europython 2018

  10. query { { event(eventId:"1") { "data": { title "event": { description "title": "Europython 2018", talks { "description": "The 2018 European name Python conference held in Edinburgh", } "talks": [ } { } "name": "Python and GraphQL" }, { "name": "Hi my name is README" } ] } } } Alec MacQueen - @macqueenism - Europython 2018

  11. /api/events/1 { "prices": [ { "price_level": { "expiry_offset": null, "description": null, "is_deleted": false, "id": 1, "name": "Normal" }, "event_id": 1, "region": { "name": "Vancouver", "default_tax": null, "countries": [ ], "invoice_numbering": "region", Alec MacQueen - @macqueenism - Europython 2018 "default_tax_id": null, "company": { "registration_numbers": "", "code": "TTW", "name": "The Training World", "settings": { "time_format": "H:i", "date_format": "Y-m-d", "locale": "en_US", "week_starts": 1, "non_working_days": "0,6" }, "bank_details": null, "currency": { "code": "GBP", "name": "Pounds Sterling", "symbol": "£", "html_code": "£", "id": 1, "is_base": false }, "id": 1, "currency_code": "GBP", "account_id": 1 }, "company_id": 1, "mapped_countries": [ { "region_code": "CA", "id": "CA", "name": "Canada" } ], "is_hidden": false, "id": "VC" }, "id": 1, "currency": { "code": "USD", "name": "U.S. Dollars", "symbol": "$", "html_code": "$", "id": 2, "is_base": false }, "price": 1200.0 } ]

  12. Mutations Alec MacQueen - @macqueenism - Europython 2018

  13. mutation { { account { "data": { create(input: { "account": { name: "New Account", "create": { emailAddress: "test@test.co" "account": { }) { "name": "New Account", account { "emailAddress": "test@test.co" name } emailAddress } } } } } } } } Alec MacQueen - @macqueenism - Europython 2018

  14. Strongly typed Alec MacQueen - @macqueenism - Europython 2018

  15. Let’s build an API Alec MacQueen - @macqueenism - Europython 2018

  16. github.com/APIs-guru/graphql-voyager Alec MacQueen - @macqueenism - Europython 2018

  17. GraphQL-Core github.com/graphql-python/graphql-core Alec MacQueen - @macqueenism - Europython 2018

  18. Alec MacQueen - @macqueenism - Europython 2018

  19. Alec MacQueen - @macqueenism - Europython 2018

  20. github.com/graphql-python/flask-graphql Alec MacQueen - @macqueenism - Europython 2018

  21. Graphene github.com/graphql-python/graphene Alec MacQueen - @macqueenism - Europython 2018

  22. Alec MacQueen - @macqueenism - Europython 2018

  23. Alec MacQueen - @macqueenism - Europython 2018

  24. Graphqlize Alec MacQueen - @macqueenism - Europython 2018

  25. Alec MacQueen - @macqueenism - Europython 2018

  26. Alec MacQueen - @macqueenism - Europython 2018

  27. Can I use it? Not yet. bit.ly/graphqlize Alec MacQueen - @macqueenism - Europython 2018

  28. inspect typing Alec MacQueen - @macqueenism - Europython 2018

  29. Graph i QL github.com/graphql/graphiql Alec MacQueen - @macqueenism - Europython 2018

  30. API First Alec MacQueen - @macqueenism - Europython 2018

  31. Upfront Design Alec MacQueen - @macqueenism - Europython 2018

  32. Release publicly, regularly Alec MacQueen - @macqueenism - Europython 2018

  33. Dogfooding Alec MacQueen - @macqueenism - Europython 2018

  34. Documentation Alec MacQueen - @macqueenism - Europython 2018

  35. ● Maintainability ● Coupling of frontend and backend ● Cognitive load ● Not enough thought given to our API Alec MacQueen - @macqueenism - Europython 2018

  36. Thank you @macqueenism All artwork used in this talk was designed by Vitaly Gorbachev from flaticon.com Alec MacQueen - @macqueenism - Europython 2018

Recommend


More recommend