今大学でプログラミング系の研究をしている者です。どこを支援すべきなのかを模索中です。
そこで、プログラミング教育の支援を行おうということで、一般的な本に書かれているここが難しいというのではなく、プログラミングを学ぶ学習者がプログラミングのどこが難しいと感じているのか知りたいのです。
言語はC言語なんでも構わないのですが、どういったところが難しいと感じているのかといったことを調査した論文等があれば教えてもらいたいです。いろいろ検索してみたのですがこれといったものがなくて・・・。また、論文等じゃなくてもホームページとか、個人の人がこう言ってるみたいなものでも多く集めて参考にしたいと思うのであればよろしくお願いします。
No.2ベストアンサー
- 回答日時:
難しいと感じるところ、と言うのはいろいろ難しいですが、いくつか上げます。
まずループなど、関数の仕事。正直、プログラムが何をするかとか、ループが何をするか分かっても、何かに例えることができなければ、理解できずにわけが分からなくなる。(初心者に多いのが、if文はすぐに覚えても、ループは覚えられない。ifは選択として日々使っていて、例えも利くが、ループを何かに例えることができていない証拠。)
ループはプログラマーにとって朝飯前の処理ですが、高校生でも、何をしているか理解できず、苦しんでいるクラスメイトを何人も見てきましたし、自分もループが意味不明で一時プログラムを挫折しました。
次に、理論でしょうか。何故こうなるのか。何故ここでこんなことをするのかと言う、処理の並べ方です。
プログラムの文法は英語より簡単です。perlとかでも大体基本的な文法は三つくらいですし、Cでも文法なんて片手で数えられるはずです。
どこが難しいかと言えば、数IIIの微分積分を解く時のように、どこでどの関数を使い、どの処理をどこで行い、値を変え、範囲を変えるという理論の組み立てや関数の働きです。実際、慣れた人には簡単でも、コツをつかめていない人はいつまで経っても解けませんよね?プログラムの難しさはそれと同じだと思います。
以上、プログラムを一度挫折した人間の意見でした。役に立てば嬉しいです。
No.1
- 回答日時:
論理的な考えができない人に論理を説明すること
四則計算や数字の比較ができない人に1次方程式(不等式)を解いてもらうこと
1次方程式がわからない人に、連立方程式を解いてもらうこと
プログラムは所詮連立方程式の集まり。
連立方程式を解くと言うよりは、その解を導き出すための連立方程式を作り出す、というのがプログラマーの仕事ですけどね。
学問に難癖をつけるつもりはありませんが、こういうのって、研究対象になるんだろうか、という疑問が、、、
> どういったところが難しいと感じているのかといったこと
感覚を論理的に(コンピューターに)説明することじゃないですかね?
自動車のアクセルを踏めばスピードが出て、ブレーキを踏めばスピードが落ちる。
どのくらいの圧力でブレーキを掛ければ、何秒でスピードが何km/h落ちるというのを論理的に連立方程式で説明できれば、レースゲームが作れるんじゃないでしょうか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Java プログラミングのプの字も知りませんが、プログラミングを勉強したいです。とりあえず、学ぶものを決めない 3 2022/11/04 13:10
- 教育ソフト・学習ソフト 最近小学生、中学生にもプログラミング教育をしているとの事ですが、どの様な教育をしているのかお教え下さ 4 2023/08/11 05:17
- 物理学 【 理系科目の選択 】 現在、高一の者です。 文系に興味がなく理系に進もうと思うのですが、物理と生物 7 2022/10/06 22:53
- 物理学 プログラみングの方面に行きたくない 2 2022/08/06 13:48
- その他(プログラミング・Web制作) プログラミングって本来数学的な計算をする為のものではないのですか? 学校で配られたFortran90 11 2022/08/25 22:14
- IT・エンジニアリング 21歳の大学3年男です。 現在プログラミングを習得できるところに入ろうか悩んでます。 そのスクールは 3 2022/06/21 00:43
- 就職 これからの時代役に立つスキルはなんですか? 今の時代、プログラミングが重要視されてますよね。 授業で 6 2022/08/21 22:08
- その他(自然科学) 科学技術計算の仕事について 2 2023/02/04 18:09
- HTML・CSS 英字と日本語が並んだhtmlの自体をcssで指定したい 2 2023/05/22 23:58
- C言語・C++・C# プログラミング言語「C#」の難易度ってどれくらいですか? 4 2022/05/12 19:15
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
画面を強制的に再描画させる方法
-
VBAで3秒だけ時間を止めたい
-
DoEventsが必要な理由について
-
GIFアニメをループさせたくない
-
vba
-
アクティブセルから、A列最終行...
-
VBA Dir関数でファイルをループ...
-
流れ図(フローチャート)が分か...
-
DOSコマンドのループ内のTIMEコ...
-
Application.OnTime の使い方
-
ループフリー
-
VBA for文が止まらない
-
vb.netからエクセル関数書き込み
-
csh foreachで「*」でエラ...
-
一巡伝達関数と開ループ伝達関数
-
VBA for i=1 to lastrow
-
VB.NETで素因数分解のプログラ...
-
ループ内での条件処理
-
VBAでの一時停止と再開の方法
-
どなたかこのプログラミングを...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
画面を強制的に再描画させる方法
-
VBAでの一時停止と再開の方法
-
ループ7回目の悪役令嬢は、元敵...
-
UWSCの終了の仕方
-
Escキーを押すと、中断する時と...
-
エクセルの当番表を作っていま...
-
GIFアニメをループさせたくない
-
VBAで3秒だけ時間を止めたい
-
どなたかこのプログラミングを...
-
VBA for i=1 to lastrow
-
DOSコマンドのループ内のTIMEコ...
-
ListBox 複数選択 で オートフ...
-
vbscriptでIE自動入力(途中で...
-
vb.netからエクセル関数書き込み
-
DoEventsが必要な理由について
-
Java 南京錠
-
アクティブセルから、A列最終行...
-
テキストボックスの名前に変数...
-
範囲指定したセルを1つずつ飛...
-
VBA Dir関数でファイルをループ...
おすすめ情報