見出し画像

「ゲームで学ぶPython!Pyxelではじめるレトロゲームプログラミング」を、ゲームを作りたくてプログラミングをはじめた人・現役エンジニア・プログラミング講師の視点で紹介

2025年1月27日発刊の書籍「ゲームで学ぶPython!Pyxelではじめるレトロゲームプログラミング」を、私「ゲームを作りたくてプログラミングをはじめた人」「現役エンジニア」「プログラミング講師」の視点で紹介します!

結論:オススメです!

ゲームを作りたくてプログラミングをはじめたい人
ゲームを作りたくてプログラミングをやってみたいと思った人
ゲームを作りたくてプログラミングをやってみたけど、一度は挫折したけど、やっぱりやってみたい人
ゲームを作りたくてプログラミング(Scratch)をはじめて、でもテキストプログラミングに踏み出せない人
プログラミングの勉強・・・文法ばっかりでつまんない・・・おもしろくない・・・と思っている人


ポイント1:常々「環境構築と黒い画面は経験しておこうよ。」と思っていたら、ちゃんと経験できるようになっていた。

CHAPTER 1 プログラミングをはじめよう
CHAPTER 2 プログラムを動かしてみよう

プログラミングに挑戦しよう!と一歩踏み出して、最初に挫折するポイントと言われるのが「開発環境の構築」ですが、Win/Mac両対応で書かれています。
そして、さらなる恐怖ポイント「黒い画面(コマンドプロンプト、ターミナル)」での操作もていねいに書かれています。

現代はネット上でプログラミング学習ができる環境が整っていますね。
パソコン操作に慣れていないキッズ向けのScratchなどのブロックプログラミングや、テキストプログラミングの初学者向けとして最適です。
一方で「ネット上の環境が整い過ぎている」弊害として、テキストプログラミングの初学者段階を終えたにも関わらず、ずっとWeb上のIDEで学習してしまい・・・いざ自分でアプリケーションを作ろうとした時に動作環境はおろか、プログラミング環境の作り方がわからない人も多いのではないでしょうか?

「自分で環境インストール、黒い画面に慣れておいて欲しい」という想いを抱いているのですが、いい感じで実現されていて、「お、いいね!」っと思いました!

ポイント2: 常々「入門のところで”フレームワークウェイ”は必要ない。」と思っていたら、しっかり基礎だった。

CHAPTER 3 お絵描きプログラムを作ろう
CHAPTER 4 アニメーションを作ろう

初学者向けのプログラミング学習によくある「裏で暗黙のゲームループ」があったり、「実行や関数呼び出しを意識できない」のは、よろしくないと思っています。
お気軽に感じてもらいたいが故に意図的に意識しないようにされているのは理解できますが・・・いざ自分でアプリケーションを作った時に「いわゆるmain関数の存在を知らない」「勝手に何度もされるものと思っていた」なんて勘違いをしている人が多いのではないでしょうか?

でも、本書では、ちゃんと最初は「基礎」だけで構成されています。実行は「1回こっきり」「ループさせたきゃ、繰り返し」「画面の更新は、プログラムで意識して実施するもの」と。

「手続き」としての関数も「なぜ関数化するとよいのか?」と説明があり、何より「繰り返しや分岐より先に説明している」のが素晴らしいと思いました。
(関数を後回しに学習させる教材は多いですが、そもそも最初に習うprintとかの命令自体が関数ですもんね。)

繰り返しについて、これはPythonのすごく良いところで「条件式不要で繰り返しを表現」できるので、シンプルに先に「繰り返し」を学べるようになっているのは良いですね。
(いわゆるC言語系の for文やwhile文が条件と結び付き過ぎているので、よく「繰り返し・分岐、どちらを先に学ぶべきなのか問題」が勃発しますよね・・・)
(思えば、自分が最初に学びはじめたBASICも FOR I = 0 TO 10 STEP 2 と条件を意識せずに書けるので、右も左もわからず、プログラミングをできる人が周りにいない独学環境でも悩むことがなかったのかも。)

そして、条件分岐
「あれをするにも判断」「これをするにも判断」と、ここからグーっと「プログラムで操る」を実感していく流れになっていくのが、ここまでの基礎学習の流れとして、良いですね!

ポイント3: 常々「入門って1ファイルに完結するように押し込め過ぎ・・・」と思っていたら、オブジェクト指向、モジュール分割まで、しっかりと。

CHAPTER 5 ワンキーゲームを作ろう
CHAPTER 6 シューティングゲームを作ろう
CHAPTER 7 アクションゲームを作ろう

実践をしていくフェーズでは、よくあるゲーム作りの入門書は「ミニマムでできること」で終わっていることが多く、学んだ後に「いざ大きなゲームや作品を作ろう!」と思った時に頓挫することが多いですね。実は Pyxel 付属のサンプルも基本的に1ファイル完結でしたので、本書の内容はどうなるのだろう?と心配しておりました。
ですが、その心配は見事に払拭されました!

これだ!と思ったのは、シーンの管理の話まであったことですね。
技術面では、やはり現代においてはオブジェクト指向に触れないわけにはいけませんが、しっかりとそこも解説があります。
そして、複数ファイルでのプログラム構成まで・・・ここまで解説されたものはなかなか見かけないんじゃないでしょうか。
ここまで書いていただけたら、ゲームを作り込めます!

ポイント4: 常々「プログラムは使う人のことを想いながら作ろう。たくさん使ってもらおうよ。」と思っていたら、しっかり公開のことまで言及。

CHAPTER 8 作ったゲームで遊んでもらおう

大事ですよね!
この辺りはWebの開発環境の方が公開の場・コミュニティも兼ねていることも多いですね。そこまでとは言わないですが、せっかく作ったものを公開することをきっちりお伝えいただいていて、いいですね!

最後に

キッズ向けプログラミング教室の教材として、本気で採用しようかと検討中です。
私は「ファミコンにハマり、ゲームを作りたくて兄のMSXで独学でプログラミングを学びはじめたけど、結局ゲーム会社さんに入るのは夢のことだと思い込んでしまって、フツーにシステム開発界隈に入ってしまった人間」なのですが、現代のキッズにそんな思いをさせたくなくて、夢を現実にできる手助けをしたい・・・
Pyxel はちょうど良いさじ加減のゲームフレームワークであり、そして本書はプログラミングの基礎+それがしっかり伝わる「手元に置いておきたい一冊」だと感じています!

最後まで読んでくださり、ありがとうございました!

いいなと思ったら応援しよう!