情報処理学会第 86 回全国大会

1ZM-02

物語を取り入れた Processing 言語によるオブジェクト指向学習教材の開発
岩﨑 裕憲†

土肥 紳一‡

東京電機大学大学院システムデザイン工学研究科†

1. はじめにオブジェクト指向プログラミング（以下，オブジェクト指向）は，システムが大規模になるほどにその有用性を増していく．逆に小規模な開発であれば，手続き型プログラミングで対応可能であるということも少なくない．しかし，多くのオブジェクト指向の入門教材では，個々の概念の分かりやすさが重視され，その概念の説明に必要な最低限のコードしか扱われない．そのため，演習で作成するプログラムは小規模の域を出ない．オブジェクト指向に関する個々の概念は理解できても，それらを組み合わせる体系的な理解ができず，オブジェクト指向の有用性を実感することができない．初学者のうちはひとまず一つ一つの概念に対する理解を深めていくことも大切である．しかし，その次の段階として，有用性を感じられる体系的な理解も同様に大切である．
そこで，オブジェクト指向を扱うプログラミング入門書を一通り学習し終えた人を対象として，体系的にオブジェクト指向を学習する教材開発しようと考えた．これにより，学習者のオブジェクト指向習得をサポートする．
2. 教材の概要
オブジェクト指向はプログラムが大規模になるほどその本領を発揮する．そのため，1 つの連続性のある題材に取り組ませる．教材で扱う題材は，プログラミングでイメージを描画させるという内容である．そのため，プログラミング言語及び開発環境にはグラフィック表現に秀でた Processing を用いる．
描画させるのはトランプカードである．円形・四角形・三角形といった基本図形からスートを作り，そのスートと他の要素を組み合わせ，トランプカードの完成を目指し，最終的には 53 枚のすべてのカード一度に表示させる．教材開始直後は当然小規模である．そのため，開始時点では手続き型プログラミングで作成し始め，規模が大きく複雑になったところでオブジェクト指向を取り入れ，書き換えるという形をとる．また，教材に物語性を取り入れ，図形を模したキャラクターを，学習の進行に応じて進化させていく．これにより，学習内容に親しみやすく，完成形をイメージしやすい教材にすることを目指す．

東京電機大学システムデザイン工学部‡

2.1 イメージの描画の狙い
オブジェクト指向の「オブジェクト」を素直に日本語に語訳すると「モノ」である．一般にモノと呼ばれる概念には実体が存在するが，オブジェクト指向における「オブジェクト」は，実体を持つモノの概念を拡張した抽象的な概念であり実体を持たない．
そういった背景があるからこそ，広い概念への適応が可能である一方で，抽象的であるが故に理解するには想像力が欠かせない．
三浦らは，昔話や童話を題材に物語が進行する様子を，オブジェクト指向の考え方を適応した図やソースコード，実行結果で表現することを通して，オブジェクト指向のソフトウェア設計を学ぶ学習法を提案している[1]．昔話や童話といった物語を題材とすることで，オブジェクト化する対象が具体的で取り組みやすいものとなっている．しかし，実行結果は文字の羅列であり，実体を持つ現実世界における「モノ」からすると抽象的である．そこで，より現実世界におけるモノの概念に近い形の表現を模索し，着目したのがイメージの描画である．イメージは画面上に描画することで，具体的な結果が得られるのに加え，印刷することで実体を持たせることも可能である．そのため，抽象度が下がり，分かりやすく取り組みやすい教材になると考える．
2.2 Processing について
本研究では，トランプカードを描画するプログラムを作成させる．そのため，プログラミング言語及び開発環境には，視覚的表現の容易な Processing を選択した[2]．Processing にはグラフィックスライブラリが豊富に用意されており，以下の図 1 のようにイメージの表現が容易である．Processing は Java を基に開発されたプログラミング言語であり，オブジェクト指向に対応している．

図 1 Processing でのコードの記述と実行結果
2.3 トランプカードを題材にした理由
トランプカードには，以下の図 2 のようにスート4 種それぞれにランク違いのものが 13 種，それにジョーカーを加えて計 53 種ものカードがある．

4-921

Copyright 2024 Information Processing Society of Japan.
All Rights Reserved.

情報処理学会第 86 回全国大会

いて 1 枚のトランプカードを描画することが目標であり，物語を構成するキャラクターは基本図形から進化したスート図形であるためスート編としている．
表 1 学習項目

図 2 最終目標の 53 枚のトランプカードの描画
これらを，基本図形から作成するとなればプログラムの規模はそれなりに大きくなる．一方でカードのつくりには共通点や規則性があり，大部分は再利用可能である．そのため，オブジェクト指向含め，それ以外のプログラミング手法に関しても多くの使いどころがあり，題材に適していると考えた．また，輪郭がはっきりしておりオブジェクトに分割しやすい．本研究では対象外とするが，発展としてゲーム化することもでき，より広い学習に展開可能である．
2.4 物語導入の狙い
高井らによれば，オブジェクト指向教材に物語を導入することで，学習内容への親しみやすさや課題の状況理解への向上が見られることが示されている[3]．本研究でも，同様の効果を期待しているが，物語のジャンルは大きく異なる．[3]では，架空のソフトウェア会社を舞台に，学習者は新入社員として働いているという想定の下，業務を模した課題が出題されるといった，現実に即した内容であった．
一方で今回開発する教材における物語は，トランプカードになることを夢見る図形の成長をサポートするというファンタジー要素の強いものである．プログラム作成の進行過程に連動して，物語に登場するキャラクターが図形からスート，スートからカードといったように進化し，キャラクター同士の関係性や要望が変化していく．これにより，完成形をイメージしやすい教材を目指す．以下の図 3 は教材の流れを図にしたものである．

はじめに 図形達との出会いとその夢
第 1 章「スート」のカタチ（基本図形編）
1.1「ダイヤ」のカタチ
1.2「ハート」のカタチ
1.3「スペード」のカタチ
1.4「クローバー」のカタチ
1.5「スート」集結
第 2 章「カード」化の試練（スート編）
2.1 頼れる幼馴染「カード台紙」
2.2 永遠のライバル「ランク」
2.3「ランク」と息を合わせて…「スート」のフォーメーション訓練
2.4 憧れのエリート「絵柄」先輩
2.5 いざ、合体のとき…
第 3 章 パワーアップ？はやくも新たなる合体！（カード編）
3.1 どうする？「クラス」分け！
3.2 クラスは別だけど…スート結集！
3.3 思いを受け継いで…「継承」
3.4 突然の来訪者「JOKER」
3.5 特訓の成果、カード集結

第 2 章までは手続き型プログラミングで行うが，ここまで進めると規模が大きく煩雑になってくる．
そのため第 3 章では，第 1 章，第 2 章で作成したものをオブジェクト指向を取り入れた形に書き換える．
53 枚のカードを一斉に表示させることが目標である．第 3 章の 1 話から 3 話でオブジェクト指向の三大要素である，カプセル化，継承，多態性を扱う．
第 3 章では物語を構成するキャラクターはスートから進化したトランプカードであるため，カード編としている．
4. まとめ本研究では，オブジェクト指向を扱うプログラミ
ング入門書を一通り学び終えた学習者を対象として，トランプカードを描画するプログラムの作成を題材とした教材を開発する．教材には物語性を取り入れ，体系的なオブジェクト指向の習得をサポートする．
今後は，教材作成に取り掛かると共に，評価方法についても検討していく．

参考文献[1] 三浦元喜，片桐僚太，酒井遼太，昔話や童話を題材としたオブジェクト指向ソフトウェア設計の学習法，
図 3 学習の流れとキャラクターの変化
情 報 処 理 学 会 研 究 報 告 ， Vol.2022-CE-164,
No.15,pp.2-4,2022.
3. 学習項目[2] Casey Reas，Ben Fry，船田巧(訳)，Processing を
学習項目は以下の表 1 の通りである．導入である
はじめよう第 2 版，オライリージャパン，2016．
はじめにを除いて全 3 章 15 話で構成している．
[3] 高井久美子，佐々木茂，渡辺博芳，荒井正之，武第 1 章では，基本図形から 4 種のスートを描画す
井恵雄，「物語」導入型教材コンテンツを活用したることが目標であり，物語を構成するキャラクター
セルフラーニング型授業，教育システム情報学会は基本図形であるため，基本図形編と名付けている．
誌，Vol.24, No.2,pp.111-113，2007.
第 2 章では，第 1 章で作成したスートの図形を用

4-922

Copyright 2024 Information Processing Society of Japan.
All Rights Reserved.