北村研究室で「RPGの開発で学ぶクラス設計ハンズオンセミナー」を実施
北村研究室にて,オブジェクト指向プログラミングとクラスの設計方法を学ぶために,Pythonを用いた「RPGの開発で学ぶクラス設計ハンズオンセミナー」を実施しました。このセミナーでは,Pythonの基礎的な文法から始まり,オブジェクト指向やクラスの概念について説明した後に,ドラ〇ンクエストのようなRPGの戦闘シーンをPythonのクラスで設計しながら実装しました。4時間程度の実施時間で,全員で話し合いながらクラスを設計し,ド〇クエ1程度(敵味方ともに1体)の戦闘シーンが実装できました。参加者は北村研究室の新5年生4名と既存学生3名,他研究室の教員1名,北村の計9名でした。
実施内容
- Pythonの初歩的な使い方
- int型,string型,print関数,Pythonにおけるインデント,if文,list型,for文,ミュータブルとイミュータブル,ユーザー関数
- 成績表クラスの設計
- クラスとインスタンス,インスタンス変数とメソッド
- list型変数と関数を使って成績表を作成してみる
- 手続き型プログラミングの限界
- クラスで設計してみる
- インスタンス変数:名前・ID・国語の点・数学の点・英語の点,メソッド:3科目の平均点を表示,イニシャライザとインスタンス変数の定義,カプセル化,クラス変数
- クラスの継承
- 継承の概念(共通の変数・メソッドを親クラスで定義,特殊な変数・メソッドを子クラスで定義),基底クラス(親クラス,スーパークラス)と派生クラス(子クラス,サブクラス),プレイヤークラス→剣士クラス・魔法使いクラス,オーバーライド
- RPGの戦闘シーン設計
完成したスクリプト:rpgBattle.py