カテゴリー
サインイン 新規登録
学習時間 15時間
難易度 初級
質問投稿
価格 ¥1,980

はじめてのGo x AWS Lambdaで飲食店検索LINE Botを作ろう

入門:Go言語で飲食店検索LINE Botを開発しよう。AWS SAM CLIでの開発環境の構築からAWS Lambdaのデプロイまで、Go言語とAWSを用いた一連の開発工程を学ぶ。その中で、構造体やJSONの取り扱い方などGoの初歩的な知識にも触れます。

5
最終更新 2020/11
やんばる

注意

本教材を新規に購入しないでください。

教材で利用しているぐるなびAPIの新規利用登録受付停止に伴い、本教材は最後まで進めることができません。

飲食店検索LINE Botの開発を通してGoの基礎を学ぶ

本教材では、Goを使って飲食店検索LINE Botを作ります。題材はLINE Botですが、単にLINE Botを完成させることだけをゴールとするのではなく、そこまでの開発を通じてGoの基礎文法やAWS SAM CLIの使い方を学べる内容となっています。

Goは、Googleによって開発された静的型付けの言語です。RubyやPHPやPython, JavaScriptなどの動的型付け言語を学んだ方が、プログラミングの知識の幅を広げる意味でもGoを学ぶことはおすすめです。

作成するLINE Botは、以下の画像のように入力されたキーワードに対して飲食店検索結果を返信するシンプルながら実用的なものとなります。外部API(今回はぐるなびAPI)の使い方などについても触れているので、ぜひ手にとって学習お楽しみいただければと思います。

https://i.gyazo.com/c15367b96fefd649326105ec95aed6dd.gif

学習内容

本教材を通じて、以下について学ぶことができます。

  • Goの初歩的な知識
    • 変数宣言
    • 環境変数の取り扱い
    • 定数
    • 構造体
    • JSONの取り扱い
    • for文
    • switch文
    • ポインタ
  • AWS SAM(Serverless Application Model) CLIを使った、AWS Lambdaのデプロイ方法
  • LINE Botの作り方
  • LINE Botの開発を効率化するLINE Messaging API SDKの使い方
  • リッチな見た目のLINEメッセージを送ることのできるFlex Messageの使い方
  • ぐるなびAPIのような、企業が公開しているAPIの使い方

また、周辺知識として以下も解説していきます。

  • AWS CLIでのプロファイルの設定方法
  • PC上の開発環境を一時的にインターネットに公開できるngrokの使い方

この教材の対象者

  • Ruby, Python, PHP, JavaScriptなどの動的型付け言語で簡単なアプリケーションを作ったことがあり、新たに静的型付け言語のGoを学んでみたいと思っている方

または

  • Goの基礎文法を学んだ次のステップとして、何かアプリケーションを作ってみたいと思っている方

受講における必要条件

本教材は大きく分けて以下の内容となっています。

  • 0〜4章 : ローカル環境でGoを使ったLINE Bot開発を行う
  • 5章 : AWS(Lambda等)へのデプロイを行う

そのため、Goを使ったLINE Bot開発を学ぶだけであればAWSアカウントは不要です。

5章でのAWSへのデプロイ方法も含めて学ぶ場合は、以下が受講にあたって必要な条件となります。

  • AWSアカウントを持っていること
  • AWSのマネジメントコンソールにログイン可能な、管理者権限(AdministratorAccess)を持ったIAMユーザーを用意できること

AWSの利用料金について

本教材で利用するAWSリソースについては、一部従量制料金の対象のものがあります。

無料利用枠を積極活用するなど、教材全体で極力料金を抑えるようにしていますが、利用状況次第では費用が発生する可能性があります。

あらかじめご了承ください。

学ばないこと

HTML, CSS, JavaScriptを用いた、ブラウザ向けのWebアプリケーション開発については本教材では対象外としています

本教材で質問対応可能なOSや環境

  • Mac OS(注)

注: ただし、2020年11月発売のM1チップ搭載Macでは教材を進められない可能性があるのでご注意ください

本教材の構成について

本教材では、Go, AWS SAM CLI, LINE Messaging APIについて段階的に学びながら飲食店検索LINE Botを完成させ、AWSにデプロイすることがゴールとなります。

0章 はじめに

あなたのPCに、本教材を進める上で必要な開発環境を構築する方法を解説します。

また、Hello Worldを表示する簡単なGoのプログラムを作成し、実行します。

1章 Goをローカル環境のLambdaで実行しよう

AWS SAM CLIを使って、Goをローカル環境のAWS Lambda上で実行する方法を学びます。

2章 オウム返しLINE Botを作ろう

LINEに送られたメッセージをそのまま返信するオウム返しBotを作ります。

3章 飲食店検索LINE Bot(簡易版)を作ろう

LINEに入力されたキーワードに対して飲食店検索結果を返信するLINE Botを作ります。

4章 飲食店検索LINE Bot(完成版)を作ろう

LINEには、Botのメッセージをリッチな見た目にするためのFlex Messageという機能が用意されています。

これを使って、飲食店検索LINE Botを完成させます。

5章 SAM CLIを使ってAWSにデプロイしよう

AWS上にLambda等のAWSリソースを構築するとともに、Goのプログラムをデプロイします。

カリキュラム

Section 0 はじめに
Section 1 Goをローカル環境のLambdaで実行しよう
  • 1-1 Goをローカル環境のLambdaで実行しよう
  • 1-2 AWS SAM CLIのインストールとSAMプロジェクトの作成
  • 1-3 SAMプロジェクトをローカル環境で実行する
  • 1-4 SAMのテンプレートの役割や読み方
  • 1-5 LINE Bot用のAWSリソースをSAMのテンプレートに定義する
  • 1-6 LINE Bot用のGoのモジュールを作成する
Section 2 オウム返しLINE Botを作ろう
  • 2-1 本章の流れ
  • 2-2 LINEチャネルの新規作成
  • 2-3 チャネルアクセストークン等の設定
  • 2-4 公式ドキュメントの紹介とSDKのインストール
  • 2-5 ローカル環境を一時的に外部から通信できるようにする
  • 2-6 LINEチャネルの自動応答メッセージをオフにする
  • 2-7 オウム返し機能を作る(その1)
  • 2-8 オウム返し機能を作る(その2)
  • 2-9 オウム返し機能を作る(その3)

講師のプロフィール

教材のレビュー

5.0
1件の評価
100%
0%
0%
0%
0%
てんしん 1年以上前
とてもわかりやすかったです! 初心者レベルの僕でも理解しながら進めることができました。 応用編でDyanamoDBと連携したSPAの講座を作っていただきたいです!