Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
2323/03/05 LT
Search
knot
March 05, 2023
Technology
0
130
2323/03/05 LT
knot
March 05, 2023
Tweet
Share
More Decks by knot
See All by knot
フロントエンドカンファレンス北海道2024のLPをつくってみた
618knot
0
1.5k
ちとせゆるい勉強会.pdf
618knot
0
98
app_dev_meetup_vol.1_tw.pdf
618knot
0
67
Other Decks in Technology
See All in Technology
AGIについてChatGPTに聞いてみた
blueb
0
130
[FOSS4G 2024 Japan LT] LLMを使ってGISデータ解析を自動化したい!
nssv
1
210
Application Development WG Intro at AppDeveloperCon
salaboy
0
180
Terraform CI/CD パイプラインにおける AWS CodeCommit の代替手段
hiyanger
1
240
AWS Lambdaと歩んだ“サーバーレス”と今後 #lambda_10years
yoshidashingo
1
170
rootlessコンテナのすゝめ - 研究室サーバーでもできる安全なコンテナ管理
kitsuya0828
3
380
スクラム成熟度セルフチェックツールを作って得た学びとその活用法
coincheck_recruit
1
140
New Relicを活用したSREの最初のステップ / NRUG OKINAWA VOL.3
isaoshimizu
2
580
DMARC 対応の話 - MIXI CTO オフィスアワー #04
bbqallstars
1
160
ドメイン名の終活について - JPAAWG 7th -
mikit
33
20k
Engineer Career Talk
lycorp_recruit_jp
0
120
透過型SMTPプロキシによる送信メールの可観測性向上: Update Edition / Improved observability of outgoing emails with transparent smtp proxy: Update edition
linyows
2
210
Featured
See All Featured
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
27
840
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
93
16k
GraphQLとの向き合い方2022年版
quramy
43
13k
Ruby is Unlike a Banana
tanoku
97
11k
Faster Mobile Websites
deanohume
305
30k
Building Adaptive Systems
keathley
38
2.3k
Practical Orchestrator
shlominoach
186
10k
Navigating Team Friction
lara
183
14k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
191
16k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
329
21k
A better future with KSS
kneath
238
17k
Transcript
GraphQLつかってみた LT会 2023.03.05 knot.
のっと >> まだ情報システム工学科の2年生 12月からインターン始めた 最近はWEB方面が多め 618knot 自己紹介
ハッカソンに出ました FastAPI -> GraphQLをやった
※このLTではWeb APIのことを指します APIとは アプリケーションプログラミングインタフェース(API、 英: Application Programming Interface)[注釈 1]と は、広義ではソフトウェアコンポーネント同士が互いに情
報をやりとりするのに使用するインタフェースの仕様であ る。(wikipedia)
APIとは 一言でいうと... あるサービスの機能を外部から使えるようにしたやつ (TwitterAPI, SpotifyAPI等々)
よくみるやつ(デモ) よくみる(REST)API エンドポイントがいっぱいある GETとかPOSTとかする
GraphQLとは GraphQLとは
GraphQLとは(wikipedia) GraphQL(グラフQL)はAPI向けに作られたクエリ言語およびラ ンタイムである[2]。 ウェブAPIの開発に、RESTやその他のWebサービスと比較して、 効率的、堅牢、フレキシブルなアプローチを提供する。GraphQL では、クライアントが必要なデータの構造を定義することがで き、サーバーからは定義したのと同じ構造のデータが返される。 したがって、必要以上に大きなデータが返されるのを防ぐことが できクエリの効率が良い。また、柔軟性と豊かな表現が可能なク エリ言語は複雑さを加えるため、シンプルなAPIには適さない可能
性もある[3][4][5]。GraphQLは、型システム、クエリ言語、実 行セマンティクス、静的な検証、型イントロスペクション(英語
GraphQLとは(wikipedia)
GraphQLとは(wikipedia) GraphQLはAPI向けのクエリ言語で、RESTや他のWeb サービスに比べて効率的で堅牢であり、フレキシブルなア プローチを提供します。クライアントが必要なデータの構 造を定義でき、サーバーからは定義した構造のデータが返 されます。データの問い合わせ、書き換え、購読をサポー トします。 ?
GraphQLとは API向けのクエリ言語であX 必要なリソースだけを取得できX グラフ理論がいい感じに使われていX エンドポイントが1つだけあX
問い合わせ(Query)、書き換え(Mutation)、購読 (Subscription)がある
REST, SQLとの対応
つかってみる デモ FastAPI + Strawberryで遊んでみます
おわり 参考 https://zenn.dev/offers/articles/20220609- graphql-onboarding 大規模な開発とかで特に便利そうですね