2017-06-27

学校の授業でプログラミングを教えるとしたら言語は何が良いのだろう

自分情報系の大学生

弊学では、2年生の時に必修のプログラミングの授業でC言語を習う。

中学生の頃からパソコン大先生スクリプト言語を軽く触ってた自分としては、わざわざ面倒な書き方で面倒なコンパイルをして動かす事に疑問を感じていた。

ちなみに、試験は紙ベースで、手書きプログラミングをさせられる。つらい。

スクリプト言語で良いと思ってた自分は、C言語を覚えることに疑問を感じていた。

結局、授業以外で全く勉強せずに試験結果は散々だったが、なんとか単位が取れたので良しとしよう。

プログラミング学者である人は苦労して書き方を覚えていたように思う。

脱落していった人を何人も見たが、人間やれば出来ないと思っていたことが出来るのである

本来プログラミングは誰でも出来るはずである

今学期、PHPを書く授業とPythonを書く授業を履修してみた。

PHPは、某テキストをもくもくと写経して動かしてみる授業で、独学でテキストコードを動かす気力のない自分にとっては最高の授業だ。

Pythonは、MeCabなどで形態素解析構文解析をする授業で、サンプルコード自分で考えてカスタマイズして毎回レポートで提出する。

Pythonの書き方に慣れないからか、かなりハードであるが、やりがいがあっていい感じだ。

やはり、スクリプト言語楽しい

書いたらすぐに目に見える成果が出るところが大きい。

自分は、プログラミングを授業で教えるのならスクリプト言語に限るはずだと思う。

そう思っていた矢先に事件が起こった。

最近研究室に入ったところ先生が手当たり次第Javaを教え始めたのである

せめてJavaScriptでいいかスクリプト言語を教えてほしいところなのに、なんでJavaなんだと発狂した。

それでも、30億のデバイスで動くハイブリッドさとオブジェクト指向理解する上での分かりやすさという面ではJavaが手軽なのかもしれない。

コンパイル言語も悪くはないと思い始めた。

ところで、最近になってプログラミング教育義務化とか叫ばれてるが、Scratchでパーツを並べてプログラミングをするなんてただの積み木に過ぎないと思う。

絶対にツマラナイだろう。

自分は、プログラミングの授業で数字を足し算して黒い画面に表示させるとかツマラナイと感じてしまった。

こんな複雑なことをしても、これしか成果が出ないならやってられないと思うのは自分だけなのだろうか。

お願いだからプログラミングを教えるのならツマラナイ授業をしないで欲しい。

生徒に分かるように、生徒は楽しんでプログラミングをするべきだ。

別にどんな言語でもいいと思うが、プログラミング言語は人それぞれ好き嫌いが激しいだろう。

自分は、分かりやすくて直感的なRubyというプログラミング言語学校の授業で採用されるべき言語に間違いないと思う。

別にRubyにこだわる必要はなくて、スクリプト言語であればなんでも良いと思う。

CやJavaなどのコンパイル言語は複雑で分かりにくいし、教えにくいはずだ。

スクリプト言語を教えた後に、コンパイル言語オブジェクト指向概念を教えていくのがいいのではないだろうか。

これは、あくまでもたった1人の大学生意見しか過ぎない。

みんなの意見を知りたい。

  • perlかpythonかな もしくはあえてVBAやらせて、知っているであろうExcelと関連させて身近に感じさせるってのもありかもしれない

  • 文系出身の独学者。 この手の質問にC#+VisualStudioがデフォにならない理由がわからない。 5分でGUIができる。環境構築が初学者に楽。参考資料がいっぱいある。 個人的には一択だと確信...

    • これはまったく同意。 高校生以上で、プログラムを覚える人に一番必要なのは、 ステップ実行と、常に変数の内容が見えるデバッガの存在。

  • それ用の架空の言語

    • Microsoft Small Basic (マイクロソフト スモール ベーシック)はマイクロソフトの学習用プログラミング言語 https://ja.wikipedia.org/wiki/Small_Basic 教育用に特化した言語は、それなりに優位性...

  • 汎用的なスクリプト言語だと、画像を横に動かすアニメーションを書くだけでも一苦労じゃないですか。 Scratchの良いところは、結果がビジュアルアニメーションになる点で小中学生の興...

  • 適切なIDEがあれば、コンパイラでもいいと思うけどな。 楽ができる言語かどうかで選ぶのが良いかと。 候補としてはkotlinやC#など。

  • スクリプト言語は楽しいと思う人はアプリ寄りのことをしたいんだろうから、 大学にいる間はまぁ我慢しておくんだな。 大学じゃアプリ開発なんて教えてくれないし、教えることができ...

  • プログラミングを行うことで何を学ぼうとしているのかによる。 大学の情報科学科で計算機についての基礎を学ぼうとしているならメモリまわりやらOSとのコミュニケーションやらを扱...

記事への反応(ブックマークコメント)

ログイン ユーザー登録
ようこそ ゲスト さん