Upgrade to Pro — share decks privately, control downloads, hide ads and more …

第162回 雲勉 比較して学ぶ AWS Amplify Gen 2

第162回 雲勉 比較して学ぶ AWS Amplify Gen 2

下記、勉強会での資料です。
https://youtu.be/870qwL5hbjI

Avatar for iret.kumoben

iret.kumoben

June 09, 2025
Tweet

More Decks by iret.kumoben

Other Decks in Technology

Transcript

  1. 講師自己紹介 2
 ▪ 小巻 玖美
 • アジャイル事業部 第一開発セクション • 2023年1月〜

    アイレットで開発エンジニア • ご質問は YouTubeのコメント欄で受け付けております。
 後日回答させていただきます!
 

  2. この動画の対象
 3
 ① AWS Amplify について聞いたことがない(初級) ② AWS Amplify は少し触ったことがあり、なんとなくは出来ることを知って

    いる(初級〜中級) ③ AWS Amplify を普段使っており、⼤体のことは知っている(中〜上級) 本動画は②の⽅を対象にしています
  3. アジェンダ
 4
 1. AWS Amplify とは 2. AWS Amplify Gen

    1 と Gen 2 3. チュートリアルを通して AWS Amplify Gen 2 を知る 4. チュートリアルで作成したアプリケーションを改良する 5. まとめ
  4. AWS Amplify Gen 1 と Gen 2
 7
 AWS Amplify

    には Gen 1 と Gen 2 の2つのバージョンがある Gen 2 は 2024年5⽉ にGAされた Gen 1 Gen 2
  5. AWS Amplify Gen 1 と Gen 2
 8
 Gen 2

    がリリースされている今でも、AWS Amplify のコンソール上からGen 1のアプリケーションを⽴ ち上げることは可能 新しくアプリケーションを 作成する場合は、 Gen 2 の利用が推奨されている
  6. Gen 1 でも便利だったが、課題も多くあった 9
 AWS Amplify (今のGen 1) がリリースされたのは 2017

    年 アプリケーションの初期⽴ち上げの速さに感動 基本的には amplify init, amplify add, amplify push でリソースが簡単に作成できる Gen 1 はCLIコマンドで Amplifyプロジェクトを立ち上げる
  7. Gen 1 の課題 15
 Gen 1 のデプロイは Amplify CLI で⾏われる

    デプロイに失敗した場合のエラーが分かりづらく、何が問題でエラーが発⽣しているのか 調査に時間がかかることがある → 後の 「Gen 2 になって嬉しいこと」の部分で詳しく 2. Amplify CLI のエラーがわかりづらい
  8. Gen 1 の課題 16
 Gen 1では、カスタマイズが⾏いづらかった 3. 要件が加わると、変更が⾟い • AWS

    Amplify で作成したリソースに設定を追加したい場合、CLIから作成することが できず、⾃分でオーバーライドする記述を JSON や TypeScript などを利⽤して 記述する必要がある
  9. Gen 1 の課題 17
 どのファイルが設定値なのかわかりづらい 3. 要件が加わると、変更が⾟い • バックエンドリソースを作成する JSON

    ファイルが複 数作成されており、ファイル毎に何を作成しているの かわかりづらかった = ファイルの役割を理解する必要があった
  10. Gen 2 になって、何が嬉しい? 19
 バックエンドのTypeScript記述 Gen 2からは Amazon DynamoDB や

    AWS AppSync などの作成を、TypeScriptで記述 できるように Gen 1 Gen 2 schema.graphql resource.ts
  11. Gen 2 になって、何が嬉しい? 20
 バックエンドのTypeScript記述 Gen 2からは Amazon DynamoDB や

    AWS AppSync などの作成を、TypeScriptで記述 できるように Gen 1 Gen 2 schema.graphql resource.ts 補完が効かず、記法が間違っていたとしても デプロイしてみないと間違いに気づけない
  12. Gen 2 になって、何が嬉しい? 26
 Sandbox機能 • Gen 1 でも、Sandboxという⽤語は使われていた •

    ただこの機能は Amplify CLI でバックエンドの環境を⾃分で追加することで、 別のバックエンド環境を作れる機能だった 開発するたびに バックエンド環境の切り替えが必要 https://docs.amplify.aws/gen1/react/tools/cli/teams/sandbox/
  13. Gen 2 になって、何が嬉しい? 28
 Sandbox機能 Gen 2 では、コマンド1つで開発者毎にサンドボックスが作成される → ローカル開発は

    ホットリロード で快適にバックエンド開発が可能 https://docs.amplify.aws/react/how-amplify-works/concepts/
  14. チュートリアルを通して AWS Amplify Gen 2 を知る
 30
 実際にチュートリアルを⾏うことで、Amplify Gen 2

    の理解を深める Gen 2 のチュートリアルを通して学んでみる https://docs.amplify.aws/react/start/quickstart/
  15. チュートリアルを通して AWS Amplify Gen 2 を知る
 31
 テンプレートリポジトリから、AWS Amplify ⽤のリポジトリを作成する

    1. AWS Amplify と接続するリポジトリを⽤意する https://github.com/aws-samples/amplify-vite-react-template
  16. チュートリアルを通して AWS Amplify Gen 2 を知る
 42
 5. 削除機能追加 初期の状態では作成と取得のみ

    実装されているため、以下追加 • 削除⽤の関数 • イベントハンドラー
  17. チュートリアルを通して AWS Amplify Gen 2 を知る
 45
 5. 削除機能追加 Todo

    モデルへの参照は、 ../amplify/data/resource の import 部分
  18. チュートリアルを通して AWS Amplify Gen 2 を知る
 46
 5. 削除機能追加 Todo

    モデルへの参照は、 ../amplify/data/resource の import 部分
  19. チュートリアルを通して AWS Amplify Gen 2 を知る
 47
 5. 削除機能追加 Todo

    モデルへの参照は、 ../amplify/data/resource の import 部分
  20. まとめ
 56
 • AWS Amplify は様々な機能があり、初期⽴ち上げが爆速で可能 • AWS Amplify Gen

    2 はよりコードファーストの開発体験で、 開発しやすくなった • ただ、カスタマイズを⾏う時に⼯夫が必要になることは Gen 1 で もGen 2 でも同じように発⽣する Gen 1 から Gen 2 への移⾏は まだ推奨されていないので注意