みなさん、こんにちは!
タカハシ(@ntakahashi0505)です。
11/30に「詳解!Google Apps Script完全入門[第2版]」が発売されます。
今回は、第2版ということで、第1版のリニューアル版ということになりますが、いったい何が変わったのか、気になりますよね。
ということで、今回は「詳解! Google Apps Script完全入門」の第2版、何が変わったか?についてお伝えします。
では、行ってみましょう!
第1版の目次構成
まず、おさらいとして、第1版について簡単に紹介します。
約3年前の2017/12/22に発売、計464ページのボリュームでした。
実際の目次構成は、以下のとおりとなっていました。
●準備編
第1章 Google Apps Scriptの基礎知識
第2章 スクリプトエディタ
●基礎編
第3章 基本構文
第4章 制御構文
第5章 関数
第6章 オブジェクトの仕組み
第7章 JavaScriptの組み込みオブジェクト
●Google Workspace Services編
第8章 スプレッドシート
第9章 Gmail
第10章 ドライブ
第11章 カレンダー
第12章 ドキュメント
第13章 翻訳
●Script Services&ライブラリ編
第14章 イベントとトリガー
第15章 ユーザーインターフェース
第16章 ファイルとデータの操作
第17章 外部サイトへのアクセス
第18章 プロパティサービス
第19章 ライブラリ
第2版で変わったポイント
さて、今回はその「GAS本」の第2版を上梓したのですが、第1版から変更になった主なポイントをお伝えしていきます。
V8ランタイム構文対応
最も大きなポイントがV8ランタイム構文対応です。
GASはもともとアップデートがとても速いので、第2版の話は以前からいただいていたのですが、このV8ランタイム待ちでした。
V8ランタイムとは…については以下の記事をご参考ください。
それで、第1版の内容から、いくつかの内容が影響を受けるのですが、以下がその影響範囲となります。
- 3章
- 変数・定数: let/const
- 指数演算子(**)
- テンプレート文字列
- スプレッド構文
- 分割代入
- 4章
- for…of文
- 5章
- デフォルト引数・残余引数
- 関数リテラル: アロー関数/メソッド構文
- 6章
- クラス: class構文/constructor/メソッド構文/get/set
- 7章
- 組み込みオブジェクトに多数のメソッド追加
前半はほぼすべてですね。…というか、変数や関数などの基礎構文がごっそり新しくなるわけなので、8章以降も含めて、すべてのソースコードがすべて見直しとあいなりました。
SlidesサービスとFormsサービスを追加
Google Workspace Services編に、要望が多かったスライドとフォームの章を追加しました。
クラスやメソッドについては、公式ドキュメントで検索をしてたどりつくことができるのですが、そもそもの「サービスの構造」について公式ドキュメントで理解するのは少し骨が折れます。
例えば、公式ドキュメントにも以下のようにスライドのサービス構造のページも用意されているのですが…ちょっと、日本人&ノンプログラマーには読み解くのは辛いです。
なので、第1版ではスプレッドシート、ドキュメント、カレンダー、Gmail、ドライブ、翻訳について、各サービスの構造を解説した上で、各クラスとそのよく使用するメソッドについてお伝えしていました。
第2版では、それにスライドとフォームが加わった形になります。
特に、スライドはかなりサービスの構造が複雑なので、手助けになるのではないかと思います。
GASのアップデートを反映
GASは毎月のように何らかのアップデートが行われていますので、3年も経つとその回数はかなりの数になります。
この3年でいうと、最も大きいものはV8ランタイムサポートだったわけですが、その次くらいに大きいアップデートもいくつかありました。
- Apps Scriptダッシュボード
- console.logの仕様変更
- GmailDraftクラス
- スプレッドシートのマクロ機能
- スプレッドシートの重複削除
- onSelectionChange
- 共有ドライブ
- ドライブのファイル構成のポリシー変更
上記、第1版に含まれていたもの、ノンプログラマーにとって重要なアップデートについては、第2版で加筆を行っています。
その他の追加や調整
その他の加筆・整理も行っています。
以下が主なポイントです。
- 組み込みオブジェクト
- Objectオブジェクト
- Google Workspace Services
- 権限・共有(Driveサービス)
- Script Services
- Baseサービス
- User・Session・console
- Utilitiesサービス
- formatDateメソッド
- Scriptサービス
組み込みオブジェクトも、Script Servicesも、より情報が増えた一方で、構成としてはスマートになっているはずです。
また、ノンプログラマーがよく使用するであろう項目については、なるべく含めるようにしました。
第2版の目次構成
と、いうことで以上を踏まえた結果の第2版の目次構成がこちらです!
●準備編
第1章 Google Apps Scriptの基礎知識
第2章 スクリプトエディタとダッシュボード
●基礎編
第3章 基本構文
第4章 制御構文
第5章 関数
第6章 クラスとオブジェクト
第7章 JavaScriptの組み込みオブジェクト
●Google Workspace Services編
第8章 スプレッドシート
第9章 Gmail
第10章 ドライブ
第11章 カレンダー
第12章 ドキュメント
第13章 スライド
第14章 フォーム
第15章 翻訳
●Script Services&ライブラリ編
第16章 Baseサービス
第17章 ユーザーインターフェース
第18章 ファイルとデータの操作
第19章 Utilitiesサービス
第20章 プロパティサービス
第21章 イベントとトリガー
第22章 外部サイトへのアクセス
第23章 ライブラリ
章としては、赤字の4章分が追加となっていますが、黄色のマーカーの章では節や項の追加や書き直しをしています。
また、それ以外の章でも、ソースコードとスクリーンショットはほぼ全面書き直し、撮り直し…頑張りました!
結果として、100ページ増の564ページとなっております。
GASがV8サポートされたことをきっかけに一気に動き始めた #GAS本 第2版。
蓋を空けてみたら、第1版よりも100ページ以上増えてました…!
新構文、新メソッドはもちろん、スライド、フォーム、Apps Scriptダッシュボードをはじめ新たな知識を詰め込んでいます。
— タカハシノリアキ#GAS本第2版12/1発売 (@ntakahashi0505) October 20, 2020
まとめ
以上、「詳解! Google Apps Script完全入門」の第2版、何が変わったのか?についてお伝えしました。
欲張って、たくさん加筆・修正をしましたので、より一層、学びのお役に立てるのではないかと思います。
そして、なんとそれにも関わらずお値段据え置き…!!
ぜひ、GASの学びのおともにしていただければと思います。
なお、今回の内容はコミュニティ「ノンプログラマーのためのスキルアップ研究会」の定例会でもお話しました。
以下、ツイートまとめとなりますので、合わせてご覧いただければ幸いです。
書籍「詳解!Google Apps Script完全入門[第2版]」関連記事
書籍「詳解!Google Apps Script完全入門[第2版]」に関連して、本書自体や、執筆に関する裏話や出来事、ノウハウ、イベントレポートなどを連載していきます。- 書籍「詳解!Google Apps Script完全入門 [第2版] 」発売についてのお知らせ
- 【4/14開始】「GoogleAppsScript完全入門」に関するクラウドファウンディング企画のお知らせ #GAS本
- 11/30発売「詳解!Google Apps Script完全入門[第2版]」のまえがきを全文無料公開
- 「詳解! Google Apps Script完全入門」の第2版、何が変わったのか?
- 「詳解!GoogleAppsScript完全入門[第2版]」の改訂作業にかかった時間と苦労
- 本日発売「詳解!GoogleAppsScript完全入門[第2版]」のあとがきを全文無料公開
- 「詳解!Google Apps Script完全入門[第2版]」発売記念!都内の大型書店行脚レポート