TypeScript + GASでAPIを作る / Build API with TypeScript and GAS

D1d987836a880f8c29d1f63c88b92f80?s=47 shike
April 11, 2019

TypeScript + GASでAPIを作る / Build API with TypeScript and GAS

Cluexの社内LT大会で発表した時の資料です。

D1d987836a880f8c29d1f63c88b92f80?s=128

shike

April 11, 2019
Tweet

Transcript

  1. TypeScript + GASで APIを作る Cluex Webグループ 柴山健吾

  2. 話すこと • GASでアプリケーションを作る • claspについて • TypeScriptについて • clasp +

    TypeScriptでAPIを開発してみる
  3. GASでアプリケーションを作る • Spread SheetsとかGoogle製品のAPIを使ってあんなこ とやこんなことできる • でも普通に作ろうとするとつらい ◦ ローカルで開発できない ◦

    バージョン管理できない ◦ 補完も何も効かないザコい専用エディター
  4. GASでアプリケーションを作る

  5. clasp

  6. claspとは • ローカルで開発できる ◦ バージョン管理できる • コマンド一つでデプロイできる • TypeScriptで開発できる!!!

  7. _人人人人人人人人人人人人人人人人_ > TypeScriptで開発できる!! <  ̄Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^ ̄

  8. TypeScript • 静的型付けをJavaScriptにもたらす JSのスーパーセット • 既存のJSコードをそのまま使っても動作する • JSコードにトランスパイルするので、 型情報はトランスパイル時に失われる •

    そのため実行時には型は保証されない
  9. clasp + TypeScriptで開発してみる Googleカレンダーから1週間の予定を取得して JSONで返すAPIを作ってみた

  10. claspのインストールとログイン

  11. Google Apps Script APIをオンに https://script.google.com/home/usersettings

  12. ローカル環境初期設定

  13. tsconfig.jsonを作成

  14. src/appscript.jsonのtimeZoneを修正

  15. src/Code.tsを実装

  16. src/Code.t s を実装

  17. src/Code.tsを実装

  18. コードをデプロイ

  19. 公開

  20. 公開

  21. 公開URLを叩く

  22. まとめ • clasp使えば自分の好きな開発環境で GASアプリケーションが開発できるし バージョン管理もできる • TypeScriptによる型付けで補完が効いて開発が捗る • 型安全による安心感 •

    静的型付けは正義
  23. ご清聴ありがとうございました