PR

 前回は、大学でのコンピュータ入門の授業を紹介しました。今回から2回の予定で、文科系学生向けのプログラミング入門を紹介します。

 一橋大学では、先週ご紹介した情報基礎の授業の発展として、大学1、2年生向けに「計算機概論」という授業を用意しています。担当する教員がそれぞれの専門を活かして学生に役立つ内容の授業を開講し、学生たちは講義要綱(シラバス)を見て、自分の興味に合った授業を受講することができます。

 一橋大学に入学してくる学生で自分でプログラミングしたことがある学生はほとんどいません。私はそのような学生たちにあえて「ソフトウエアの作り方」を学ぶ授業を提供しています。「ソフトウエアの使い方」を学んだ学生たちに、普段使っているゲームやワープロなどのソフトウエアがどのような仕組みで動いているかを体験的に理解してもらうことが目的です。

 極端なことをいえば、プログラムに使う言語も何を作るのかもあまり重要ではなく、ソフトウエアがどのように作られているのかということを経験してもらうことを重視しています。それが将来、ITを活用しながらビジネスの世界で生きていくであろう学生たちにとって貴重な経験になると思っているからです。

学生たちが使っているツールはこれです

 この授業では、以前ご紹介した教育用プログラミング言語「ドリトル」を使いました。みなさんに一緒に体験してもらうために、最初にドリトルの動かし方を簡単に説明することにします。

 ドリトルについては、以前、この連載でも「ドリトル入門(1)~(3)」でご紹介しました。詳しい説明はそのときの記事をご覧ください。この記事の執筆当時、ドリトルを動かすためには、パソコンにインストールする必要がありました。その後、オンラインで動くドリトルを開発しましたので、今回はそれを使って動かしてみることにします。

オンライン版ドリトルの画面

(※)オンライン版ドリトルの実行には、Javaのインストールが必要です。もしドリトルが表示されない場合は、Javaのサイトから最新のJavaをインストールしてください。

 オンライン版ドリトルのページを開くと、Webブラウザの画面にドリトルが表示されます。作成したプログラムを保存できないこと以外は通常のドリトルと同様に使うことができます。

 試しに、「編集画面」で次の2行のプログラムを入力してみましょう。

カメ太=タートル!作る。
カメ太!100 歩く 90 左回り 100 歩く。

 入力したら、「実行!」ボタンを押します。「実行画面」に切り替わり、画面にカメが表示されて歩いたら成功です。

カメが歩きます

 あらかじめ用意しているサンプルプログラムを読み込んで実行することもできます。「読込」ボタンを押して「snowman36.dtl」などを選んで「実行」ボタンを押してみてください。

最終的なオリジナル作品は個性豊か

 「計算機概論」では、「ドリトル」を使ってプログラムの使い方を学び、最終的にはオリジナルの作品を作ってもらいました。

 ドリトルを使ってプログラミングの基礎を学ぶ際には、例題を中心に進め、少しだけ例題を改良するような課題を毎回提出してもらいました。

 一通り基本的なプログラムを作れるようになった段階で、自分がどんな作品を作ってみたいかを考えてもらいました。学生は思い思いの作品に取り組みました。作品は、見て楽しむアニメーション、迷路のようなパズルゲーム、シューティングのようなアクションゲームなどがありました。今回はアニメーションの作品を紹介したいと思います。

 以下は学生が記述したプログラムです。数行ずつ入力して実行すると、どのようにプログラムが作られているかがわかると思います。なお、これは、先ほどご紹介したオンライン版ドリトルのサンプルファイルとして提供されている「snowman36.dtl」と同じ内容です。

// タートルを作り、地面を描く
カメ太=タートル!作る 消える。
地面=「カメ太!900 歩く 90 右回り 900 歩く 90 右回り」!2 繰り返す 図形にする。
地面!(色!150 50 50 作る)塗る -480 500 位置。

// タイマーで一定間隔で雪を描く
カメ吉=タートル!作る 消える。
雪時計=タイマー!作る 0.03 間隔 100 回数。
雪時計!「カメ吉!6 円 (白)塗る (乱数(700)-400)(乱数(700)-300)位置」実行。

// 体を作る
下=カメ太!35 円 (白)塗る 320 -200 位置。
時計=タイマー!作る 0.3 間隔 20 回数。
時計!「下!1.06 拡大する -20 2 移動する」実行。

// 頭を作る
時計!待つ。
上=カメ太!30 円  (白)塗る -330 -200 位置。
時計!0.3 間隔 11 回数。
時計!「上!1.1 拡大する 20 20 移動する」実行。

// 顔を描く
時計!待つ。
右目=「カメ太!5 歩く 90 右回り」!4 繰り返す 図形にする。
右目!(黒)塗る -210 40 位置。
左目=右目!作る -170 40 位置。
鼻=カメ太!8 円  (赤)塗る -188 20 位置。

// バケツをかぶせる
バケツ=「カメ太!100 歩く 90 左回り」!4 繰り返す 図形にする。
バケツ!(色!200 200 200 作る)塗る -220 200 位置。
時計!0.5 間隔 10 回数。
時計!「バケツ!0 -10 移動する」実行。 

// 星が流れる
時計!待つ。
星=「カメ太! 100 歩く 144 右回り」!5 繰り返す 図形にする。
星!(黄) 塗る 250 250 位置。
時計!0.1 間隔 100 回数。
時計!「星!-20 -20 移動する 」実行。 

学生が作成したアニメーション

 これは、ある学生が作った冬のアニメーションです。雪が降る中で、雪を転がして雪だるまを作って行きます。寒い冬の風景ですが、背景のおかげで暖かい雰囲気につつまれています。

 このプログラムを作ってくれたのは、あまりパソコンが得意でない学生でしたが、前向きに取り組んでくれました。本人にとってもよい経験になったようです。ちょっと感想をご紹介しておきましょう。
「私はあまりパソコンが得意ではないので、心配もあったけど、説明が丁寧だったおかげで、自分なりの作品を作ることができたことがすごくいい経験になったと思います。

 ドリトルについては、日本語だし、簡単な命令でいろんなことができてわかりやすかったです。他の授業で学んだプログラミングは正直あまりわからないまま、応用なんか到底できない感じだったので、プログラミング初心者としては楽しめたことが嬉しかったです。」

 この「楽しめた」という感想は私にとってもうれしいものでした。 自分の力で「応用」できてこそ、ソフトウエアがどうやって生まれているのかを自分の経験として理解できると思います。

 今回は紙面の都合で、作品プログラムを1個だけ紹介しました。このほかにも、さまざまな作品が作られていますので、次回はいくつかを選んで紹介したいと思います。

インベーダーゲームもありました

 ちなみに、今回の記事を読んで プログラムを作ってみたいという気分になった人は、以前の記事をご覧ください。

* はじめてのプログラムを動かしてみよう -ドリトル入門(1)-

* 拾い物ゲーム(前編) -ドリトル入門(2)

* 日本語で拾い物ゲームを作ってみよう(後編)-ドリトル入門(3)

【PCオンライン編集部からのお願い】

 ドリトルの利用に当たっては個々のユーザー自身の責任において行ってください。
 コラムで紹介するドリトルのプログラム動作については編集部でも確認していますが、すべてのユーザーのパソコン環境で同じように動作することを保証するものではありません。申し訳ありませんが、紹介する内容について、個別のご質問にはお答えしかねますのでご了承ください。
 より詳しい情報は http://dolittle.eplang.jp/ をご参照ください。
 よろしくお願いいたします。

次回に続く)