卒業研究のご紹介
2021年版

情報系所属学生

表示言語を切り替え可能なプログラミング学習支援アプリケーションの開発

上田 尚弥宮崎県
情報学部情報工学科2021年3月卒業
宮崎県 日章学園高等学校出身

研究の目的

プログラムの学習には、タイピングをせずに、マウス操作でプログラムを作成できるScratchなどのビジュアルプログラミング環境が活用されることも増えています。Scratchはプログラミング的思考の育成には有用なアプリケーションですが、実際にアプリケーション開発で使われるような、例えばC言語やJavaといったテキストベース言語の知識を身につけるのは難しいという問題もあります。
そこで本研究では、プログラミング的思考の育成と、テキストベース言語の学習を目的として、表示言語を切り替える機能をもつビジュアルプログラミング環境を開発しました。
利用者は、ビジュアルプログラミング機能でプログラミング的思考を育成しつつ、言語の切り替え機能で、例えば、すでに知っている「日本語」とこれから学ぶ「C言語」などの言語を切り替えながらテキストベース言語の学習を行えます。

研究内容や成果等

■ アプローチ

ビジュアルプログラミング環境で、テキストベース言語の知識を身につけることが難しいという問題を、ブロックの表示言語切り替え機能により解決する(図1)。

図1 言語切り替えのイメージ
実行過程が分かりづらいという問題は、実行ブロックの強調表示機能、変数の値変更通知機能により解決する。
また、ビジュアルプログラミングで用いる言語や命令ブロックのデータを、利用者が登録できるようにすることで、様々なプログラミング言語や、アルゴリズムの学習に対応する。

■ アプリケーション概要

本アプリケーションは、ビジュアルプログラミング機能、ブロックの表示切り替え機能、実行中のブロック・変数の強調表示機能、プログラム言語ブロックの登録機能を有する。
アプリケーション全体の画面を図2に示す。
画面上部の言語切り替えボタンで、作成したプログラムの構造を維持したまま、表示を他の言語に切り替えることができる。
実行ボタンをクリックすると、実行中のブロックがオレンジ色に変化し視覚的に確認できる。また、変数の値が変化すると、変数一覧に変化した値がアニメーションで表示される。

図2 アプリケーションの実行画面

■ 評価

学部生6名に本アプリケーションを使用してもらい、本アプリケーションを用いる学習の有効性と操作性をアンケートにより評価した。
言語の切り替え機能、実行速度の変更機能、変数の表示機能が学習に役立ったかをそれぞれ5段階で評価した結果、6名全員が4以上を選択し、学習に対して有効であることを確認した。操作性についてのアンケートでは、完全に想定通りの動作をしたと回答した人が0人であったことから操作性には課題があることを確認した。

■ むすび

本研究では,プログラムのコードや動作の視覚的な理解を補助することを目的として、表示言語を切り替え可能なプログラミング学習支援アプリケーションを開発した。
実験の結果、本ツールはプログラミング言語を新たに学習する際に、コードや動作のイメージを掴むことを補助できることを確認した。
指導教員からのコメント ソフトウェア工学研究室教授 田中 哲雄
上田尚弥君は、新しいプログラミング言語を学ぶとき、すでに知っている言語と対比させると効率よく学ぶことができると考えました。まさにその通りだと思います。教員が学生に説明するときも「この機能はC言語の〇〇に相当する」「Javaの◇◇と同じ」などのように、他の言語と対比させることがよくあります。上田君は、そのアイデアを学習支援アプリケーションとして形にしました。その過程で、開発プロジェクトの進め方など、社会に出てから必要となる多くのことを学び実践しました。また、国内学会と国際学会で発表しました。この経験は社会に出てからきっと役立つことと思います。これからのますますの活躍を期待します。
卒業研究学生からの一言 上田 尚弥
神奈川工科大学では、情報リテラシーなどの基礎的な知識から、ネットワークやサーバの管理などの実践的な知識まで幅広いことを楽しく学ぶことができました。特に、3年次からは専門的な授業も増え実践的な知識を身につけることができました。また、その頃から、実際にアプリケーションを作るなどの「学んだことの実践」を行い、さらに理解を深めることができるようになりました。
卒業研究では、教授のアドバイスをいただきながら、自分で考えたテーマに沿って研究を進めました。開発ではうまくいかないこともありましたが、最終的に形にすることができて自信に繋がりました。社会に出てもこれまで得た知識や経験は役立つと感じています。