週刊アスキー

  • Facebookアイコン
  • Twitterアイコン
  • RSSフィード

遅ればせながらプログラミングの基礎を学んでみる

プログラミング教育の波に乗れ! Swift Playgroundsに挑戦してみた

2019年05月04日 10時00分更新

 2020年度以降、小学校でプログラミング教育が必修化される。それにともない、プログラミング教育に向けた展覧会や教室も多くなってきている。子育て世代の関心もうなぎのぼりで、市場拡大の波も目に見えるようになってきた。

 プログラミングネイティブの子どもたちが世を跋扈するのはそう遠くない話であり、シンギュラリティーが近づく時代を担う人材として頼もしい限りだ。しかし、筆者はその現状に焦りを感じ始めている。

 というのも、自分はIT媒体に所属していながら、プログラミングを実際に試したことがないからだ。コーディングや関数といった基本知識を情報として把握しているに過ぎない。非常に恥ずかしい話ではあるのだが、このままではちびっこたちに鼻で笑われるのも時間の問題だ。

 早急に対策を打たなければならない。傷つきやすいガラスのプライドを守るべく、iPad専用のプログラミング学習アプリ「Swift Playgrounds」にチャレンジしてみた。

iPad専用プログラミング学習アプリ「Swift Playgrounds」。アップルが提供しており、App Storeから無料でダウンロードできる

iPadでプログラミングを基礎から学習

 Swift Playgroundsは、アプリ名からもわかるように、プログラミング言語「Swift」を使ってプログラミングを学べるのが特徴だ。コーディングなどのプログラミングに関する事前知識は不要。Byte(バイト)くんという、ウエストポーチ(?)を身につけたかわいい(?)キャラクターを操作して、パズルを解きながらコードの基本について学習できる。

 まずアプリを起動すると収録されている多数のコンテンツが表示される。レベルに応じたプログラミング学習に挑戦でき、CGアニメーションによって子どもでも飽きずにひとつずつ学ぶことが可能だ。

 メイン画面では、基礎から応用までどのレッスンも無料で選ぶことができる。慣れてきたらゲームに挑戦してみよう。まず手始めに、レッスン1にあたる「コードを学ぼう1」をタップ。用意されたコマンドを正しい順序で入力し、Byteくんが宝石を取れるよう動かしてステージをクリアしていく。

 進めていくとステージの道のりが遠くなり、入力できるアクションコマンドも増えてくるが、簡単なパズル感覚で楽しく解ける。油断してうっかりミスをしても、コマンドを入力し直してなんどもコードを実行できる。

メイン画面。どのレッスンから始めてもいいが、初心者という自覚があるなら迷わず「コードを学ぼう1」から始めよう

宝石が取れるようにコマンドを入力。「コードを実行ボタン」で動かせる

正しくコマンドを入力しないと目的達成前に動きが止まってしまう。その際はコマンドを修正してやり直そう

ステージをクリアしていくと、徐々に入力するコマンドが増えてくる

 コマンドを書くステージをいくつか終えると、「バグを見つけて直す」というデバック作業を学べるフェーズに入る。あらかじめ入力されているコマンドを実行してみて、正しいものに書き換える。実際のプログラミング作業でも重要な業務にあたるので、基礎として学べるのはありがたい。

 「最短の道順」では、目的達成のための最短ルートを自分なりに考えて実行できる。正解は1つではないので、今までのおさらいのつもりでコースを導き出そう。

デバック作業中の気分はもうエンジニアだ

「最短の道順」に正解はない。ベストを尽くしてみよう

初心者に立ちはだかる“関数”

 ここまでは思ったほど苦戦せずスイスイいけたが、次に待ち構えているのは、初心者にとっての関門“関数”だ。

 決まった一連の動作を関数として定義することで、入力するコマンドの数をぐっと減らすことができるが、頭を使って関数に入れるコマンドを決めなければならないため難易度が高くなる。

 関数の段階をクリアすると、forループ、条件分岐コード、論理演算子といったフェーズに入る。より難しくなっていくわけだが、悩んだ分だけクリアした時の達成感があり、かつ理解を深めることができるのであきらめずに挑戦してもらいたい。

 どうしてもクリアできない場合は、画面右下にヒントがあるため、ありがたく利用するのも手だ。

はじめはとまどう関数だが、ステージを重ねるごとに考え方が身についてくる。ヒントにもお世話になったが

 子どものみならず、プログラミング未経験の大人にも最適な入門編となっている同アプリ。筆者は、GW期間中にガッツリやりこんでみて基礎をマスターする所存だ。無論、本格的なプログラミングの実践を見据えて。

■関連サイト

この記事をシェアしよう

週刊アスキーの最新情報を購読しよう