プログラムことはじめ Hour of Codeを触る

2020年7月19日日曜日

Programming

t f B! P L

HOUR OF CODE


「プログラムミングを学び始めたい!けれど、どこから初めて良いかわからない。」

「子供にプログラミングを教えたいけど、自分は出来ない。」

何でも最初の一歩が一番勇気が必要で、難しいですね。実際にその道で活躍している人が身近にいれば聞けるのだろうけれど、そうでないことも多いと思います。

私もプログラムを書くことを主な業務としてはおらず、たまに業務上必要なスクリプトを書いたりする程度なので、

  • 1からプログラムを学ぼう
  • 学ぶからには誰でも理解できるところから始めよう
そういうことを考えました。

今回紹介するのは、一時間でプログラムを学ぶHour of Code の紹介です。


Hour of Codeとは

Hour of Code は、「コード(プログラミング)」の謎を解き明かし、全ての人が基本を学ぶことができることを示し、コンピューターサイエンス分野の幅広い参加者に向けて作成された、1時間のコンピューターサイエンス入門として始まりました。1 時間のコーディング(プログラミング)が、いまや様々なコミュニティの努力へ拡大し、コンピュータサイエンスの発展のための世界的な努力となっています。 チュートリアルと活動をご覧ください。この草の根キャンペーンは、世界中の 400 以上のパートナー と 200,000 以上の教育者によってサポートされています。

また、サイトには45ヶ国語に翻訳されている、4歳から104歳まで学習可能などの記載もあり、誰でも学べるプログラミング学習サイトということです。


早速体験

早速はじめていきましょう。

Hour of Code にアクセスし、画像内赤枠のアクティビティもしくは試すをクリックします。


やっぱりスターウォーズ

すると沢山のコースが表示されます。どれを始めてもいいのですが、やっぱり、スターウォーズが面白そうですよね。

初心者向けだし、対応言語にもJapaneseが表記されてるし、コレで行きましょう。startボタンをクリックします。

次いでイントロダクションビデオを見るように進められますので、せっかくなので見たあとに次へ進みましょう。


BB-8をあやつろう!


スターウォーズの音楽とともにチュートリアル動画か流れます。その後、やっとプログラムの開始です。

わたしたちは、あのスクラップ金属 が 必要なの。BB-8、それらを集めてこられる?」

レイが指示している様にBB-8にスクラップをあつめるプログラムを作っていきましょう。

初期状態で、BB-8の行動に移動:右が設定してあったので、すぐ実行してみましたが、距離が足りなかったみたいです。。

リセット後、移動:右を2つにして再実行してみます。


スクラップ回収成功!

コードを表示してみると、


moveRight();
moveRight();

Move Rightが2行。つまり、右へ移動を2回実行しろ、というプログラムを作ったことになるのですね。


R2-D2 & C-3POを思いのままに!

6章を終えたところで、再度動画が流れます。

BB-8を十分操ることが出来たので、こんどはR2-D2とC-3POと一緒にインタラクティブなゲームを作りましょう。

BB-8の時は一度実行をしたら、プログラムされていた行動が終わるまで待つしかなかったのに対し、これからはイベント駆動型のプログラムを書いていくことになります。

動画でも紹介されていますが、ボタンクリック矢印キーの押下に対して、どういう動きをさせるかプログラムしていく。ということになります。


  • 上向き矢印キーが押された時:移動上
  • 矢印が下のとき:移動下

として実行。R2-D2を上下キーで操って反乱軍2人に触れましょう。


成功!


自分のスターウォーズゲームを作る!

最後の15章まで行くとまた動画が流れます。

今まで学んだことを使えば自分の好きなようにゲームが作れるはず。

重要なのはイベントコマンドを理解することです。

  • イベントはキッカケ
  • コマンドは指示
と覚えても良いかもしれません。こういう風に記述しましょう。

Aをキッカケにして、Bしなさい。

さあ、自分だけのゲームを作ってみましょう。


あなただけのスターウォーズゲーム、完成しましたか?

私も一つ作ってみました。

ルールは

  • マイノックに触ると、ストームトルーパーが1体とランダムで1体増えます。
  • ストームトルーパーに触れると、負けです。
  • 反乱軍に触れると、勝ちです。

是非プレイしてみて下さい。



修了証授与

さあ、これでスターウォーズのゲーム制作を通じてプログラムの基礎を学びました。
修了証の授与です!


プログラム学習の第一歩。さて、これからプログラムの世界に更に踏み込んでいきましょう。



QooQ