見出し画像

Board Game Arenaで自分のゲームを遊べるようにするまで(2023年7月)

2023年度の年間目標の1つとして、サイコロ塾で作成したボードゲームを「Board Game Arena」(BGA)でプレイすることができるようにする、ことを掲げました。

このnoteは、1週間に一度追記していき、その1週間のうちにどんなことを学習したかを書き残していく個人的なメモの2023年7月ver.・・・なのですが、2023年7月は学習に関するモチベーションが下がってしまい、月の半分以上学習をサボってしまいました。そのため、1週間に一度noteを追記するということもできませんでした。
学習した日々の内容はPHPに関する復習がほとんどでしたが、『確かな力が身につくPHP「超」入門』を使って学習する中で、以前まで使用していたテキストである『スラスラ読めるPHPふりがなプログラミング』との違いがいくつかありましたので、今月のまとめはそれらを紹介することとしたいと思います。


『スラスラ読めるPHPふりがなプログラミング』

はじめに、先月までに使用していたPHPの学習のためのテキストである『スラスラ読めるPHPふりがなプログラミング』についてです。

こちらのテキストの特徴はなんといっても、「プログラムの読み方をすべて載せる(ふりがなをふる)」ことにあります。
ふりがなを振って読み下せるようにすることで、プログラムをみた時に頭の中でスラスラとその処理について理解できるようにしています。
学習内容の範囲は、そこまで広くはないですが、最終的に干支チェックアプリが作れるくらいになります。(干支チェックアプリの作成に四苦八苦した様子はコチラのnoteに書いています)

『確かな力が身につくPHP「超」入門』

コチラは新たに使用している学習テキストです。特徴としては「超」入門とあるように、基礎からしっかり学習内容を紹介してくれている点です。
学習内容の範囲としては、ショッピングカートやログイン処理の作成から、商品管理などを行うデータベースの設定・制御法なども学ぶことができます。(今のところテキストの3分の1くらいまで学習しましたが、まだここまで行き着いていないです・・・。)

2つのPHP学習テキストの違い

さて、今回のnoteのメインとなる部分です。
2つの学習テキストを使ってPHPの学習をしてみて以下のような違いがありました。

①サンプルプログラム(スクリプト)の有無

まず、『スラスラ読めるPHPふりがなプログラミング』にはダウンロード可能なサンプルプログラムが用意されていません。
そのため、本書を用いた学習では、基本的には自らのPCを使って実際にVScodeやPCのコマンドラインでスクリプトを書き、実行して挙動を確認していくことになります。

一方で、『確かな力が身につくPHP「超」入門』にはダウンロード可能なサンプルプログラムが準備されています。
『確かな〜』の方の冒頭に、本書を使ったさまざまなシチュエーションにおけるPHPの学習方法が紹介されています。「本書だけで」「コンピュータを使って手早く」「コンピュータを使ってじっくりと」という3つに分けられ、それぞれのシチュエーションで本書がどのように活用できるかが書かれています。「コンピュータを使って手早く」では、サンプルプログラムがあることが大いに役立ち、サンプルを動かしながら理解を進める学習方法が紹介されています。

『スラスラ〜』に比べて、あらかじめ用意されたプログラムで挙動を確認できる、という点で『確かな〜』には状況(例えば、あまり学習時間が取れないのでササっと予習する場合など)によっては利点があると思いました。
一方で、サンプルプログラムがあると自分で「プログラムを書く」という機会がガクッと少なくなるように思います。『スラスラ〜』では、どうにも書籍の中で求められた挙動にたどり着けず、四苦八苦した覚えがあります。初めから正しく挙動するサンプルプログラムがあるとはいえ、この時間を意図的に『確かな〜』を使った学習でも取り入れることは、試行錯誤による学習を進めるという点で必要かもしれないです。
(実際、ファイル名をサンプルプログラムと少し変えていちから写経するようにしています)

②学習内容の提示方法

2つの学習テキストの違いの2つ目は、「学習内容の提示方法」です。
『スラスラ〜』では、プログラムを実際に読者に書かせる前に、概念の説明があります。「◯◯という処理を10回繰り返すプログラムを書いてみよう」という目標をはじめに提示するところは、『確かな〜』でも同じなのですが、『スラスラ〜』の場合、まず「for文」そのものについて知識を読んで学ぶパートがあります。
一方で、『確かな〜』の方では実際のプログラムを提示したのちに、「実はforを使った制御構造がされていました」という種明かしがされるように進みます。

この違いも、サンプルプログラムの有無と強く関連しているのかもしれません。「先に構造を提示してプログラムを書かせる」、「先にプログラムの挙動を確認させて構造について解説する」という2つの学習内容の提示方法について、どちらが優れているかは単純に比較は難しいように思いますが、僕としては『確かな〜』の方を使っているときに『スラスラ〜』と違っていたのでびっくりした、という感想です。
上記の違いは、語学学習にも通じている違いかと思います。皆さんはどちらが好みですか?

まとめ

2つのPHPの学習テキストについて、実際にそれらを用いて学習を進める中で感じた違いを言語化してみました。これから学習する人がテキストを選ぶ参考になればと思います。

一方で、7月はあまり学習が進められませんでした。なんとなく学習がその場その場になっているような印象があります。以前に学習した内容も断片的に覚えているのですが細かい部分は思い出せず、ゼロからプログラムを書くとなるとできない、という状況です。実践に入る(自分が作ろうと思っているプログラムを作る)とこういうことが解消するのでしょうか?
どちらの学習テキストでも、テキストにしたがって実際に「プログラムを書く」というアウトプットはしているものの、大きな意味で「インプット」の段階であることはそうなのだろうと思います。自らの創造性を用いて本当の意味で「アウトプット」する段階に早く移行しないといけないなと思います。

この記事が気に入ったらサポートをしてみませんか?