【初心者にオススメ】GASを使ったプログラミング学習の始め方、勉強法
プログラミングを勉強したいけれど、どう始めたらいいんだろう?何から始めればいいんだろう?という方、いらっしゃると思います。
プログラムを勉強するには、実際に書いて、動かしてみることが一番勉強になります。
ですが、プログラムを書き、動かすためには3つの環境を用意しなければならず、いきなりハードルが上がります。
- プログラムを記述する環境
- プログラムをコンパイルする環境
- プログラムを実行/デバッグする環境
「プログラムを記述する環境」はメモ帳でも代用はできます(非常にやりにくいのでオススメはしませんが・・・)。
システムエンジニアはプログラムを書いて、動かすための3つの環境をまとめた「統合開発環境」というものを使ってプログラムを書いてシステムを構築しているのですが、「統合開発環境」を用意するだけでも手間がかかります。
(構築し慣れているシステムエンジニアでも1日以上かかります)
Google Apps Script(GAS:読み「ガス」)というJavaScriptベースのプログラミング言語を使って始め方と勉強方法を紹介しようと思います。
どうしてGoogle Apps Scriptなの?という疑問もあるかと思います。
Google Apps Scriptは統合開発環境がGoogleから提供されているので、特別な環境を構築しなくてもすぐにプログラミングとプログラムの実行ができるメリットがあります。
さらに無料のGoogleアカウントを作成すれば利用できるので、ハードルが非常に低いので、プログラミングの学習に集中して取り組むことができると思っています。
この記事では、Google Apps Scriptでプログラミングを始めるための準備から基本的な構文、勉強方法を解説します。
この記事が、プログラミング学習のとっかかりになって、学習を進める手助けができたらと思います。
Google Apps Scriptでプログラミングするための準備
Google Apps Scriptでプログラミングを始めるために必要なものはこちらです。
- パソコン
- Googleアカウント
- Google Chrome(Edge、FireFox、Safariなどのブラウザでも可)
パソコン以外は無料で準備可能となっています。
Google Apps Scriptはブラウザがあればプログラミング可能となっているので、パソコンに最初からインストールされているブラウザを使っても良いですが、Google Chromeを利用するとコンテンツアシストの機能が使えるので、プログラミングがしやすいです。
パソコン
Google Apps Scriptのプログラミングはブラウザがあればできるとは言っても、スマホには対応していません。
タブレット(iPad)はプログラミングできましたが、反応が鈍く作業があまり進みません。
パソコンであれば、Windows、Macどちらでも良いので使いやすい方を選ぶとよいと思います。
Googleアカウントを作成
通常のGoogleアカウントを作成する手順に沿って、Googleアカウントを作成します。
Google Apps Scriptを利用しなくてもGmailやGoogleドライブといった便利なサービスが無料で使えるので持っておいて損はないでしょう。
Google Chromeをインストール
ブラウザは何でも良いですが、Google Chromeを使うとコンテンツアシストなど便利な機能を使うことができます(他のブラウザではなぜかコンテンツアシストが機能しません)。GoogleChromeはGoole Chromeのインストール手順に沿ってインストールします。
コンテンツアシスト
プログラミング中にオブジェクトに定義されているメソッドや定数の一覧を表示して、プログラミングの入力を補完してくれる機能です。
プログラミングを始める
ここからはプログラミングの始め方を紹介します。
スクリプトエディタを起動する
まずはスクリプトエディタを起動します。
スクリプトエディタはGoogleが提供するGoogle Apps Scriptをプログラミングするための統合開発環境です。
Google Apps Scriptのスクリプトの編集、実行、デバッグなどを行うための専用のエディタで開発を支援するための機能が搭載されています。
スクリプトエディタを起動するには、まずGoogleドライブでスプレッドシートを作成します。
(「新規」→「Googleスプレッドシート」を選択して作成します)
スプレッドシートが開いたら、「ツール」→「スクリプトエディタ」を選択すると、スクリプトエディタが起動します。
簡単なサンプルプログラム
スクリプトエディタが起動したら、スクリプトを編集していきます。
ここでは簡単なサンプルを紹介します。
プログラムの内容は「Hello World!!」をダイアログで出力します。
function myFunction() {
Browser.msgBox('Hello World!!');
}
編集が完了したら、保存して、「▶」のボタンをクリックすれば実行できます。
実行してみると、ブラウザのタブをスプレッドシートに切り替えると、「Hello World!!」と書かれたダイアログが表示されていると思います。
ここまでがGASを0から立ち上げる手順になります。
プログラムの基本的な構文
プログラミングはプログラミング言語を使って記述します。
プログラミング言語はC言語、Java、PHPなど様々あるのですが、どの言語を使っても登場する基本的な構文があります。
- 変数や演算子を使った処理
- 条件分岐
- 繰り返し
- メソッド(関数)呼び出し
私自身、今まで6言語(C、C++、C#、Java、PHP、JavaScript)ほど現場で扱うことがありましたが、上記の構文は全てに登場しますし、文法も変わらないです。
システムはメソッド(関数)の集まり、メソッド(関数)は演算、比較、繰り返しの集まりなので。
変数や演算子を使った処理
変数は値を入れておくための箱。この変数に数値や文字列といった値(情報)を入れて、加工するなど活用していきます。
変数に値を入れたり、プログラム上で計算を行うには演算子(えんざんし)を使用します。
中でも代入演算子(=)、算術演算子(+、-、*、/、%など)、比較演算子(==、<、>)はよく利用するので、覚えておくと良いです。
下記のサンプルは変数strに「おはようございます。」という文字列を代入しています。
var str = ‘おはようございます。’;
変数や演算子を使った処理は「変数や演算子を使った処理」の記事で詳しく解説しているので、参考にしてみてください。
条件分岐
プログラムを記述していくと、ある条件によって、処理を分岐させたい場合が出てきます。
処理を分岐させたい時に使用するのはif文「もし●●なら▲▲する」です。
if文は下記のように記述します。
「もし条件式がtrueなら、ブロック({}で括られた部分)内の処理を実行する」ようになります。
if (条件式) {
// 条件式がtrueの場合に実行する処理
}
if文以外にも条件分岐を行う命令はあります。
条件分岐についての解説は「条件分岐で思い通りに制御する」の記事にまとめていますので、参考にしてみてください。
繰り返し
同じ処理を複数回繰り返す場合に使用すると良いのが、繰り返しの構文(while、forなど)です。
ある条件を満たしている間繰り返すのがwhile文、予め決まった回数繰り返すのがfor文という使い方をします。
for (初期値;繰り返し条件;増減式) {
// 繰り返したい処理をここに記述する
}
無限ループ
while文を使う際に、いつまでも条件を満たしていて、繰り返しを抜けられなくなってしまいます。これを無限ループと言います。
while文を使用する場合は無限ループにならないようにプログラミングしましょう。
メソッド(関数)呼び出し
一連の処理をまとめたものをメソッド(関数)として定義し、別の関数から呼び出すことができます。
下記の例では「sayHello」というメソッドを定義し、myFunctionから呼び出しています。
「sayHello」はログを出力しているだけですが、引数を指定して値を受け取って処理したり、戻り値を指定して処理した結果を呼び出した関数に戻すことができます。
Google Apps Scriptで使用するGmailApp.sendEmail()
などもメソッド(関数)ですので、同じように呼び出すことができます。
function myFunction() {
// メソッド(関数)を呼び出す
sayHello();
}
function sayHello() {
Logger.log('Hello!');
}
勉強方法
勉強方法は大きく分けて、独学かスクールに通うかの2つです。
私はシステムエンジニアということもあって、書籍、公式リファレンス(英語です。日本語に対応しているようでしていませんでした・・・)やWebサイトを見ながら独学で進めてもすぐに理解できました。
独学の場合は、都合の良い時間に勉強することができます。
題材が与えられているわけではなく、期限的なものもないので自由に進められます。
書籍
Google Apps Scriptに関する書籍もありますので、書籍を使って学習することもできます。
私はこちらの書籍を使って学習を進めました。
よく利用されるサービスにフォーカスを当てて、詳しく解説しているので、これから学習をスタートさせる際には活用したい一冊です。
公式リファレンス
上でもチラッと出しましたが、GASには公式リファレンスがあります。
基本英語(言語を日本語にしても翻訳されず・・・)です。
【Google Apps Script公式リファレンス】
→https://developers.google.com/apps-script/reference
スクール
スクールも開設されているようですが、Google Apps Scriptを専門的に教えてくれるスクールは私の知る限りだと「Tech Academy」のGoogle Apps Scriptコースがそれだと思います。
「Tech Academy」では学習に必要な「題材」が用意されていて、現役のエンジニアがメンターとしてマンツーマンでサポート(週2回、1回30分)してくれます。
システムエンジニアなのでプログラミング始めたての頃は現場で先輩が教えてくれました。
わからないところは2~3個まとめて聞いて、後は実践・・・
そうやってプログラミングを覚えることができました。
それと同じ環境が整うと思うとスクールもありなのかなと思います。
まとめ
プログラミング学習を進めたい方向けにオススメの勉強方法をご紹介しました。
GASを使った勉強をオススメするポイントは3つです。
- Google Apps Scriptは統合開発環境をGoogleが提供してくれているので、プログラミングに集中できる
- Googleアカウント、PC、ブラウザがあれば、無料ですぐにでも開始でき、簡単に動かすことができる
- JavaScriptがベースとなっていて、基本構文を学ぶには十分である
プログラミング言語はC言語、Java、PHPなど色々ありますが、ここでご紹介したプログラムの基本構文はどの言語使ったとしても必ず登場します。
どの言語を使っても覚えることができて、どの言語でも使えるのでGASで覚えても構いません。
GASであれば、統合開発環境は整っている状態で作ったプログラムをすぐに実行できます。
Googleスプレッドシート、GoogleドキュメントなどのOffice系のサービスに対して、ちょっとしたツールを作りたい時も簡単に利用できるので、プログラムを作ったという体験がすぐにできるのも魅力です。
これからプログラミングを始めてみようという方は是非お試しください。
現役のシステムエンジニアです。
システム構築の経験を活かして、GoogleWorkspaceを使って業務効率化のための仕組み作りを考えています。