GitHub GraphQL APIが先日、一般公開された。GitHubの上級エンジニアリングマネージャであるKyle Daigle氏に話を聞いた。
昨年のGitHub Universeで発表されたGitHub GraphQL APIは、GitHub APIに柔軟性を加えることを目的としている。大きなメリットは、必要なデータを正確に定義できることだ。これにより、複数のREST要求を1回の呼び出しに置き換えることが可能になる。さらに、GraphQLスキーマは強く型付けられており、イントロスペクティブ(introspective)でもある。
GitHubの上級エンジニアリングマネージャであるKyle Daigle氏に、APIの進展と将来について詳しく聞いた。
GraphQL APIは、昨年の10月に早期アクセスが提供されていますが、それ以降のAPI(V4)にはどのような進展があったのでしょう?新たに実装されたり、要求されたり、あるいは提供されたりした機能は何ですか?開発者の反応はどのように表現できますか?
GitHub Universeで発表した早期アクセス以降、新しいGraph APIを使用した開発者たちからは大きな期待を受けています。例えば、従来よりも効率的にデータにアクセスする方法を探していたインテグレータにとっては、今後GitHubに新たな機能が組み込まれる時に、GraphQL API経由でも同じ機能がリリースされるようになります。開発者にとっては、当社のエンジニアが使用しているものと同じAPIを使用して、必要なデータだけを要求できるというメリットがあります。
一方で、REST API (V3)の開発も中止されていませんが、この2つは構成上、どのような関係になるのでしょう?ある時点でV3を置き換えるという想定はあるのでしょうか?
現在は、インテグレータや開発者が新しいGraphQL APIをどのように使うのかを見ながら、新たなV4 APIの変更や改善を行なっているところです。GraphAPIをバックで使用するようにREST APIを積極的に移行すると同時に、REST APIにも引き続き力を入れています。今後数ヶ月にわたって、Graph APIにさらに多くのデータを追加して、REST APIと同じデータを提供できるように近付けていく予定です。
GitHub以外でのGitHub GraphQLの採用に関して、何らかの結論を導くことはすでに可能ですか?優れたスケーラビリティ、型安全性、イントロスペクションといった将来性は、どのように提供されていくのでしょう?
GraphQLは現在、広範な技術コミュニティの中で採用を広げつつあります。GraphQL EUとGraphQL Summitという2つの大規模なイベントが年次で開催されていて、中小の企業がGraphQLの使用について話し合う場となっています。GraphQLを使用することで、インテグレータは、APIが型システムを通じて提供するサービスを使って、機能をより早く、より正確に構築することができるようになりました。GitHubは、広範なGraphQLコミュニティの成長を支援することに全力で取り組んでいます。GraphQL APIを今回初めて一般公開した経験を活かして、コミュニティに貢献できることを大変光栄に思います。
GitHub GraphQLについて詳しく知りたいのであれば、ますは公式資料とチュートリアルを参考にするとよいだろう。
この記事を評価
- 編集者評
- 編集長アクション