190 likes | 335 Views
『 なでしこ 』 による プログラミング言語の導入. 山口大学 情報科学教育課程 数理情報コース 野村ゼミ 井後 宏康 原 佑輔 松江 信太郎 吉末 千紘. 研究動機. C 言語を苦手とする学生が多い印象を受けた。 なぜ苦手なのか? ~仮説~ 英単語でプログラミングすることに抵抗を感じるのではないか? 初めて学ぶプログラミング言語として難易度が高いのではないか?. アンケート内容. ① C言語でのプログラミングが、好きですか? □どちらかといえば好き。 □どちらかといえば嫌い。 ② ①と答えた理由を書いてください。
E N D
『なでしこ』によるプログラミング言語の導入『なでしこ』によるプログラミング言語の導入 山口大学 情報科学教育課程 数理情報コース 野村ゼミ 井後 宏康 原 佑輔 松江 信太郎 吉末 千紘
研究動機 C言語を苦手とする学生が多い印象を受けた。 なぜ苦手なのか? ~仮説~ • 英単語でプログラミングすることに抵抗を感じるのではないか? • 初めて学ぶプログラミング言語として難易度が高いのではないか?
アンケート内容 ① C言語でのプログラミングが、好きですか? □どちらかといえば好き。 □どちらかといえば嫌い。 ② ①と答えた理由を書いてください。 [ ] ③ C言語の命令文が、英単語であることに抵抗はありましたか? 例 do, switch, int など □抵抗があった。 □抵抗はなかった。 ※対象人数39人
アンケート結果Ⅰ ①C言語でのプログラミングが好きですか? 12人 ③C言語の命令文が英単語であることに 抵抗はありましたか? 27人 21人 18人
アンケート結果Ⅱ 抵抗がある人のC言語に対する感触 4人 C言語が嫌いな人の英単語表記 に対する抵抗 14人 14人 13人
アンケート結果Ⅲ ~どちらかといえば嫌い~ • 英語で書かないといけないから難しい • 難しくてなかなか理解・マスターできない • 将来的な必要性・利便性を知らないから • 全くわからない・難しい・どうすれば良いか分からない • 数学以外で、日常生活において利用する機会がない • どの命令文を使うのかの判断が難しい • 命令文の中に命令文があると複雑になり分からなくなる • 命令文の意味が複雑 • 覚えることが多すぎる • ポインタや配列が面倒・ポインタがうまく使えない
アンケート結果Ⅳ ~どちらかといえば好き~ • プログラムを作成して、実行できたときうれしい・達成感 • 難しい計算が解ける • 自分で考えて作る(プログラム作成)のが楽しい・おもしろい • パソコンが好きだから • どうすれば良いのか、なぜそうするのか考えることが面白い • エラーになっても修正することに面白さを感じる
アンケート結果の考察 • 英単語での表記でなければ、プログラミングが嫌いだと感じる学生を減らすことができるのではないか • もっとプログラミングの面白さ、利便性が感じられる教材による、学習支援をすることが必要である • 日本語プログラミング言語によるプログラミング学習の導入 • Web教材を作成
日本語プログラミング言語の歴史 • 1980年代後半(第1世代) 「和漢」「日本語ベーシック」「MIND」 ↓ • 1990年代 日本語プログラミング言語の暗黒期 ↓ • 2000年前後(第2世代) 「なでしこ」「ひまわり」「言霊」「TTSneo」
『なでしこ』の選択理由 • 現在市場でNo.1シェア →将来的に役立つ • ビジネスユースを目的にDelphiの処理速度と豊富な機能を生かしてつくられている →実用性や利便性を感じられる • 自然な日本語を使ってプログラムが作れる →英単語に抵抗があるという問題を解決 • 文法が単純で敷居が低くプログラミング入門に最適 →C言語よりも簡単
C言語と比較 なでしこ C言語 × 実行不可能 ○ 実行可能 記述形式は類似している
C言語より簡単な理由 ☆C言語では・・・ • 「おまじない」が必要 『なでしこ』:ヘッダのインクルードなどが不必要 • 型の認識(知識)が必要(型の例:int , double) 『なでしこ』:基本的には型を意識する必要はない • 英単語表記 『なでしこ』:日本語表記
Web教材作成にあたって IBM 「ホームページ・ビルダー 学割版」を利用 ~利用理由~ • 研究はあくまで「なでしこ」 • HP作成に関して初心者 • HTMLを学ぶ時間を削減 • 使いやすく、認知度が高い • 比較的安価
Web教材について • 作成ページ 21ページ • ページ内容 ☆ENTER ★TOP ☆研究員(作成者)の紹介・作成目的 ★『なでしこ』の使い方 (第1章~第6章,演習問題,解答例,辞書,おまけ)
第1章~第6章とおまけの内容 • 第1章・・・実行方法,演算,変数 • 第2章・・・分岐,入れ子 • 第3章・・・繰り返し • 第4章・・・配列,ハッシュ • 第5章・・・反復,反復+ハッシュ • 第6章・・・ゲーム作成 • おまけ・・・研究員が作成したゲームなど
Web教材の特徴 • 実際にユーザーが目にする操作画面や、実行結果を掲載 • マニュアル内のさまざまな用語や命令についての解説を一覧の形式で作成、各章にリンクを作成 • 各章ごとに小テストを作成 ・穴埋め式の選択問題 ・ユーザーが『なでしこ』を実際に起動させてプログラムを作成する問題(解答例・解説付) • 『なでしこ』で作成したゲームなどを掲載 • 実用的な、ファイルの「圧縮」や「バックアップ」なども可能であることを紹介するページを作成
まとめ 「C言語→なでしこ」の順で学んでみて・・・ • シンプルな記述に、多少抵抗を感じる 「なでしこ→C言語」の順で学習ができたら ・・・ • 初心者の間は細かいことを難しく考える必要がない • プログラミングの基礎・基本や流れを理解しやすい • プログラミングへの抵抗が減り、C言語をスムーズに学習できる
今後の課題 • プログラミング経験のない学生に取り組んでもらい、効果を実証する • 小テストの問題数を増やす • 各命令などにおいて、C言語との関連を説明するページの作成
参考文献 [1]『日本語プログラミング言語「なでしこ」』: <http://www.nadesi.com/> [2]柴田望洋:新版 明解C言語 入門編,2005 [3]『大学学部等におけるソフトウェアエンジニアリング教育・訓練カリキュラムモデル例』: <http://www.ipsj.or.jp/12kyoiku/J07/J0731/397-SEmodel_jpn1.pdf#search='大学学部におけるソフトウェアエンジニアリング教育・訓練カリキュラム' >,情報処理学会,2007.12.28アクセス [4]『日本語プログラミング言語、およそ20年の歴史と今後』: <http://www.sciencehouse.jp/etc/research/20050604jpphistory2.pdf> 2007.12.28アクセス [5]『ホームページの作成方法』: <http://www.ube-c.ac.jp/~egi/homepage18.html> 2007.12.28アクセス [6]『ホームページビルダーとは?』: <http://seo.kawahara-office.com/builder/builder.html>2008.01.17アクセス