どれ使う?プログラミング教育ツール

「Swift Playgrounds」は超かわいいけどガチなiOS/macOS向け言語Swiftの学習アプリ

「Swift Playgrounds」はByteというキャラクターをプログラムで動かす。ぽよぽよした動きがかわいらしい。別のキャラクターにも変更可能

 AppleのiOSやMacなどのアプリを作るために作られたプログラミング言語Swiftを、初心者がていねいに学べるアプリが「Swift Playgrounds」。iPad版とMac版のアプリで提供されています。

 キャラクターが宝石を集めたり、スイッチを入れたりする効率よい動きを考え、プログラムを作成するのがミッション。3Dのこだわりを感じる造形やかわいらしいキャラクターの動き、静かな音楽などが心地よく、ゆったり楽しみながらSwiftを学べます。2016年に発表されていて歴史もあり、現在は日本語翻訳版も安心して使えます。

プログラム手法はSwiftそのままの本気路線 ~でもちゃんと子供向けの配慮も

 子ども向けのプログラミングツールというのは、テキストでコードを入力しなくていいように、プログラムの要素をブロックなどの形にビジュアル化して、ドラッグ&ドロップ等の簡単な操作でプログラムできるようにしてあるものがほとんどを占めています。

 各種プログラミング言語のコードは英語がベースになっているので、特に、日本語が母語の子ども達にとっては、読み取ったり書いたりするハードルがさらに上がります。ビジュアル化されたツールがなければプログラミングの入り口に立つことが難しいでしょう。

 ただ、より本格的なプログラミング言語を学びたいと思ったときには、テキストでプログラムを書くことは避けて通れないので、どこかでテキストで書くプログラミング言語への入り口を作ってあげたいなぁというのが子ども向けのプログラミングに関わる人の共通の悩みでもあります。

 その点、この「Swift Playgrounds」は吹っ切れていて、プロのエンジニアが使うSwiftの言語をそのまま使います。とはいえタイピングのストレスがないように選択肢からタップするだけでコードを入力できるなど、子どもを含む初心者に操作しやすい工夫がされています。

 推奨年齢は12才から。今は日本の小学校でも英語を学習しますから、12才なら多少英語としてのアルファベットにも目が慣れているでしょう。

まずは「コードを学ぼう1」で基礎を学ぼう!

「Swift Playgrounds」は、アプリの中にさまざまな学習リソースが用意されていますが、初めてやる人は迷わずに「コードを学ぼう1」をやるのがおすすめ。他のビジュアルプログラミング系ツールである程度プログラミングに慣れているとしても、ここから始めて簡単だと感じたら適宜飛ばしながら進めば良いでしょう。「コードを学ぼう1」と「コードを学ぼう2」で基礎を学べます。

好きな学習リソースを選びダウンロードして利用する

 細かいステップで学びが積み上がるようになっていて、最初はシンプルにコマンドを並べるだけなのでとても簡単。説明文をちゃんと読めば、コマンドの意味が日本語で書いてあります。

最初の方のステージ。ていねいな説明で取り組みやすい

説明はけっこう直球だけどむしろ近道かも

 これは余裕……と思ってやっていると、ステージの難易度は徐々にステップアップ。たとえば、関数が登場すると、かわいいByteを誘導するにしても、パターンを見つけて処理を効率よくまとめるのにどうするのがベストか……と、けっこう頭を使います。

 そして、プログラム手法の説明は、けっこう直球で、学んだプログラミング用語は容赦無く出てきます。ビジュアル化したりコマンド自体を日本語化したりしていないので、むしろそれが清々しく、かえって理解への近道のような気がしてきます。

関数を扱うステップ。説明は長めだが、ここをきっちり読み、実際にコードを書いて動かして学んでいく

 子ども向けの日本語化されたビジュアルプログラミングのツールばかり使っていると、つい日本語で国語的に説明しがちなのですが、「Swift Playgrounds」を使ってみると、コードを学ぶってこういうことだったよな……とはっとさられます。見慣れない言語で書かれた記号の用途や記述ルールを把握しながら、少しずつ使えるようになっていく面白さがあります。

 説明が直球とはいえ、新しいプログラムの技を学ぶステップごとに「はじめに」というとてもフレンドリーでわかりやすい説明が展開されます。こういうところがとてもていねいで初心者に優しく、大きく概念を理解してから取り組むことができるポイントです。

「はじめに」の例①:はじめてコマンドの使い方を説明するステップ
「はじめに」の例②:関数の説明をするステップ。概念を理解しやすいように適度な例えをしつつコードの書き方まで示す

 各ステージにはヒントも用意されているので、自分で学び進めることもできますし、プログラミングの完全な初心者が取り組む場合や小学生くらいの場合は、先のステップに進んでいくと、困ったら助言できる人がいてくれると、より進めやすいでしょう。

順番に技術を積み上げてプログラミングを体系的に学べる正統派学習ツール

 「コードを学ぼう」で学習する内容を目次から以下に書き出してみます。

「コードを学ぼう1」

  1. コマンド
  2. 関数
  3. forループ
  4. 条件分岐コード
  5. 論理演算子
  6. whileループ
  7. アルゴリズム

「コードを学ぼう2」

  1. 変数
  2. 初期化
  3. パラメータ
  4. ステージを作る
  5. 配列

 このように順番に技術を積み上げて習得していく作りになっていてます。技術的にクリアすべき項目がぼかすことなく明確に示されているのも気持ちよいポイントです。ステージをクリアしないと次に進めないということはなく、全体像を把握したり、ところどころチェックすることもできるので、学習者だけでなくサポートする側にとっても便利です。

 「Swift Playgrounds」は、初心者にやさしい設計ながらも、正統派のSwift学習ツールと言えるでしょう。なんといっても、ここで学んだ言語がそのまま本当にアプリ開発で使われている言語だということが、子ども向けのツールとしてはとても貴重です。「テキストのコードを読み解くのってちょっとしんどいな……」という気持ちになるのも学びのステップの一部です。

 「コードを学ぼう」をひと通り終えられたら、より実用的なコードの使い方に挑戦できるよう「チャレンジ」にさまざまな学習リソースが用意されています。これでいったんSwiftの記述に触れておけば、他の言語を学びたくなったときにもプログラムアレルギーのようなものはなくスタートできるのではないでしょうか。

 2020年度から小学校でプログラミング教育が実施されています。これに伴い家庭でも手軽にプログラミングを学習できるツールが多数登場していますが、どんなツールを使えばいいのか迷ってしまう方も多いのではないでしょうか? そこで本連載では家庭でのプログラミング教育にピッタリなお勧めツールを紹介していきたいと思います。