13

 いつものように喫茶店に行くと、とある違和感に目を丸くしてしまった。

 ことり先輩は背筋を伸ばして座っていた。まるで、漫画に描いたような綺麗な姿勢を保っている。

「お待ちしていました。

今日こそ、約束を果たす日です」

 真剣な表情でこう言われても。約束とはまったく身に覚えのないものだ。

 今日は適当な理由を付けて帰ろうか、こんな考えがよぎったが、とりあえずコーヒーを注文するという理由でその場を離れることにした。

 レジで頼みながら座席の方をチラッと見てみるけど、その姿勢のまま首だけがこちらを向いていた。

 コーヒー持っていくと、しまいにはこう言われてしまう。

「早くお座りになってください」

 僕も揃えて、背筋を伸ばして座った。すると、彼女はやっと満面の笑みになってこう言ったのだ。

「君のために作ったんだよ」

 ことり先輩はお弁当かバレンタインみたいな台詞を放ってくる。

 これがクラスメイトならドキドキするだろう。

 彼女が異性のために何かを作ってくるとはなんだか思えなかった。この先輩からもらう、それを思うと身構えてしまう。

 でも、彼女はその姿勢のままで、何も取りだす様子は見られなかった。

 おかしい。

 首を傾げたところで、テーブルの上には一台のスマートフォンが置かれているのに気づいた。彼女はとあるアイコンをタップした。

 そこに映るのは、落ち着いた緑色の背景・黒と白のコマ......。

 そう、オセロゲームの画面だった。

 僕はコマのように目を丸くした。

 オセロのアプリと言えば通学時にひとりで、もしくはお昼休みにクラスメイトと遊ぶものだ。

 それを、作ったと言っている。

 わざわざ僕と対戦したいために。

 せめて失敗したお菓子でもいいから作ってもらいたかった気がする。

 と思いつつも、この先輩ならやりかねないか。不思議な彼女にはすでに慣れている。

 ゲームの見た目は、ポップでカラフルな要素は全くなかった。緑の背景に表みたいなマスが描かれていて、手作り感が満載だ。

「君がこの間言ってくれたから作るきっかけになった。

どんな風に処理をすればよいか考えるのは面白かったよ」

 どんな処理。たしかに、配列の授業を受けたときにオセロを口にしていた。

 このゲームと言えば、盤面を自分の色に染め上げること。

 そのためには相手を挟み込んでひっくり返さないといけない。

 ルールは簡単だけど、"覚えるのに一分、極めるのに一生"と言われるほどに年月がかかる。

 だから、コマを置くだけでも処理を考えてみたくなったのだという。

 本当に作っちゃうから、この人は本当にすごい。

「君が先手でいいよ」

 さあ始めましょう、彼女はそう言ってプレイボタンを押した。


 ・・・


 オセロの先手は黒のコマを置くことだ。

 僕はとりあえずコマを置きたい場所をタップした。すると、あの赤ずきんが画面の端から歩いてきたではないか。彼女はトコトコと歩きながらその場所にコマを置いた。

 なんとも可愛らしい演出だった。

「素晴らしいですね」

「当然でしょ~」

 ことり先輩に称賛のコメントを伝えると、彼女は腰を手につけて胸を張って答えた。自信満々な表情はまさしく彼女らしかった。


 最初は一進一退の攻防が続いていたが、盤面は次第に白く染め上げられてきた。

 ことり先輩はスマートフォンの画面をタップしながら僕に話題を提供してきた。

「どんな風に作ったか気になるでしょ」

 たしかに、少しずつプログラムを教わっているから、これがどのように作られているのか気になってしまう。

「最初は少ししかひっくり返せないように、小さいところからスタートするんだ」

 彼女のやり方はこうだ。

* まず配列ができるか(8x8マス)

* タップしたところに沿って配列に格納されるか(上書きでも構わない)

* ゲーム的に置いても良い場所か

空欄かどうか

方向に自分と同じ色のコマがあるか

* コマがあるところにタップさせないようにする

* ひっくり返す

 なるほど。これを聞くとなんだかできそうな気がしてしまう。

「そうしたら、ゲームの勝敗はどうするのか、プレイヤーが交互にタップできる......って考えるんだよ」

 少しずつなら考えていけるだろうか。


 盤面のほとんどがことり先輩の色になっている。

 それに従って話題も彼女のペースで広がっていった。

「はじめからやりたいことを全部盛り込む必要はないんだよ。

小さいところからスタートしていって、できることを積み上げていくんだ」

 まるで、今までの授業そのものが積み重なっていくようだった。

 僕はふと思ったことを聞いてみた。

「こういう命令文って、つど覚えていったんですか」

「暗記はしないよ。

 覚えるじゃなくて、アイディアが実現できるか調べるって感じかな」

 本は何冊か持っているが、webサイトで調べることもあるようだ。

 よく見ているのはプログラムの言語が一通り網羅されているところで、解説が豊富にあるサイトだという。それでいて、コードが独りよがりの書き方になっていない作者のサイトをブックマークしている。

 また、入力しながらでも調べることができるらしい。

「コードは一字一句入力する必要はないんだよ」

彼女はこう言って説明してくれた。

 たとえば、画面に文字列を表示する命令文は "Print" だ。

 このときすべて入力するのではなく、"Pri" だけ入力してCtrlキーとスペースキーを同時に押している。

 これは<入力保管>という、開発ツールに備わっている機能だ。カーソル位置の近くに小さなウィンドウが出てきて、"Pri-"からはじまる命令文の一覧が選択できる。

 "Print"を選んで、エンターキーを押すだけだ。

 入力の手間が省けて、タイプミスが減らせるわけだ。

「たとえば、画面に表示する命令文は何かって考えるんだ

英単語を参考に、"Print" かな "Output" かなって当たりを付ける。

それが、入力保管の機能を使って存在するか調べるんだ」

 辞書代わりに使っていくこともできるわけだ。先ほどの例でいえば、"Print" が出てくれば正解、ということだろう。

 書いていくと自然に覚えるのだという。

「できないことは悪くないんだよ。

難しければ、妥協点を見つけるとか、別の方法を探しましょう」

 なるほど、今日は勉強になる話題だった。

  • Xで共有
  • Facebookで共有
  • はてなブックマークでブックマーク

作者を応援しよう!

ハートをクリックで、簡単に応援の気持ちを伝えられます。(ログインが必要です)

応援したユーザー

応援すると応援コメントも書けます

新規登録で充実の読書を

マイページ
読書の状況から作品を自動で分類して簡単に管理できる
小説の未読話数がひと目でわかり前回の続きから読める
フォローしたユーザーの活動を追える
通知
小説の更新や作者の新作の情報を受け取れる
閲覧履歴
以前読んだ小説が一覧で見つけやすい
新規ユーザー登録無料

アカウントをお持ちの方はログイン

カクヨムで可能な読書体験をくわしく知る