2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

[GAS] google claspをTypeScriptで実装する

Last updated at Posted at 2020-09-04

claspって何?

GAS を管理するための CLI ツール
TypeScriptでGASを実装できる

今までのGASのデメリット

GASはJavaScript ベースの言語でコーディングを行うが、ES2015などの新しい構文に対応していないため、とても開発効率が悪くモジュールを分けることもできない。
テストコードも書けないし、Lintもできない、使い慣れたエディタも使えないという・・

何が嬉しいの?

今までのGASのデメリットを打ち消してくれること

Git でバージョン管理しながらローカルの使い慣れたエディタでコードを書いて、GASにpush して実行するという開発ができる。
もちろん、コーディングの自動補完もできる。

しっかり型を定義できるところが大きい。

プログラムを組むスピードがTSがない場合と比べて爆速です。
型定義はGASを書くスピードを上げるアクセルといっても過言ではないので。

GASに型注釈がつくことで、バグを生みにくくなる。
型定義にジャンプして、引数や返り値の型をチェックできる。

TypeScriptが型で縛ってくれるおかげで「実行 → ログ確認」のフィードバックループを回す回数は格段に減る。

具体的には

  • TypeScriptによる実装
  • Gitによる構成管理
  • Prettierによる自動フォーマット
  • TSLintによる静的解析

みたいな感じ。

どうやってGASと紐付ける?

GoogleがAPIとして、提供してくれている。

TSから古いJSへトランスパイル
(ソースコードのコンパイル的なものという認識でOK!)

googleアカウントごとに紐付けできる。

どこにPushする?

紐付けされたGoogleアカウント、対象のスクリプトIDなどを指定して、clasp pushする。
clasp pushすると自動的にGASのスクリプトエディタに反映される。

参考リンク

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?