toranoana.deno #10で話した内容です。 https://yumenosora.connpass.com/event/265961/
TypeScript初心者がDeno+FreshでGraphQLエンドポイントを作成したお話について発表しました。
Copyright (C) 2022 Toranoana Inc. All Rights Reserved.TypeScript初心者がDeno+FreshでGraphQLエンドポイントを作成した話虎の穴ラボ 原 (hk220)1
View Slide
Copyright (C) 2022 Toranoana Inc. All Rights Reserved.自己紹介● 原 一貴(Kazuki Hara)● hk220● 虎の穴ラボ インフラエンジニア● オタク:創作同人誌● 今期推しアニメ:ぼっち・ざ・ろっく!● 趣味:プログラミング(Python/Golang)2
Copyright (C) 2022 Toranoana Inc. All Rights Reserved.まえおき● 2022年8月時点の情報を基に構成● 作ったGraphQLエンドポイントはHello Worldレベル● 初心者:ブルーベリー本を一通り読んだ程度● Freshを選定した理由は技術検証のため3
Copyright (C) 2022 Toranoana Inc. All Rights Reserved.アジェンダ1. GraphQLの特徴2. やってみた理由3. 作ったもの4. これからやりたいこと5. まとめ6. 所感4
Copyright (C) 2022 Toranoana Inc. All Rights Reserved.GraphQLの特徴● クエリ言語○ SQLはデータベースのクエリ言語○ GraphQLはインターネットのためのクエリ言語● スキーマ言語とクエリ言語のセットで構成● “/graphql”という単一のHTTPエンドポイントを使ってクエリの実行● POSTメソッドだけを使用5
Copyright (C) 2022 Toranoana Inc. All Rights Reserved.やってみた理由6
Copyright (C) 2022 Toranoana Inc. All Rights Reserved.フロントエンドとバックエンドの間の通信でGraphQLが採用される例が増えてきた● mercari● Netflix● Twitter● Githubetc…7
Copyright (C) 2022 Toranoana Inc. All Rights Reserved.フルでDenoを使ったWebアプリケーションの構成も提案されている8https://speakerdeck.com/toranoana/toranoanaraho-deno-dao-ru-noqu-rizu-mi?slide=30
Copyright (C) 2022 Toranoana Inc. All Rights Reserved.Denoを使ったWebアプリケーションにGraphQLを導入できる?9
Copyright (C) 2022 Toranoana Inc. All Rights Reserved.やってみた10
Copyright (C) 2022 Toranoana Inc. All Rights Reserved.できた11
Copyright (C) 2022 Toranoana Inc. All Rights Reserved.FreshとGraphQLライブラリを使って実現可能12
Copyright (C) 2022 Toranoana Inc. All Rights Reserved.作ったもの13GraphQLエンドポイント(Fresh)query helloworld {greeting(name: "Bob")}{"greeting":"Hello Bob!"}
Copyright (C) 2022 Toranoana Inc. All Rights Reserved.コード①14
Copyright (C) 2022 Toranoana Inc. All Rights Reserved.コード②15
Copyright (C) 2022 Toranoana Inc. All Rights Reserved.これからやってみたいこと● 実際にWebアプリケーションを作る● 複雑なGraphQLエンドポイントを試す● JSONが不完全の場合にFreshから返されるメッセージが分かりづらいことを改善する16
Copyright (C) 2022 Toranoana Inc. All Rights Reserved.つまり・・・17https://speakerdeck.com/toranoana/toranoanaraho-deno-dao-ru-noqu-rizu-mi?slide=30
Copyright (C) 2022 Toranoana Inc. All Rights Reserved.まとめ● フルでDenoを使ったWebアプリケーションでGraphQLを導入できる?○ FreshとGraphQLライブラリを使って実現可能○ 複雑なGraphQLエンドポイントを作れるのか今後試す予定18
Copyright (C) 2022 Toranoana Inc. All Rights Reserved.所感● Denoのインストールが楽だった○ TypeScript初心者が使う実行環境として良い感じ○ tsc/tsconfigとかnpmを意識しなくて良いのは神● GraphQL周りのライブラリがまだ動かないのもあるので今後のDenoの普及に期待○ apollo-serverとか● deno-jaに投稿して👍を貰えたのが嬉しかった19
Copyright (C) 2022 Toranoana Inc. All Rights Reserved.ありがとうございました20