2020.01/06 まちがいだらけのプログラミング教育(1)
プログラミング教育の導入をめぐって教育現場が混乱しているという。当たり前だと思う。今まで科学教育を唯一のバイブルとしてきた先生たちに技術者教育をせよと言っているようなものだ。
なぜなら、プログラミング教育とは、現象から取り出された機能をうまく活用できる能力を育成する教育だからである。これは技術者教育そのものである。
まず、プログラミングというものがどのように進歩してきたかを説明したい。当方はプログラミングを自費で1000万円ちかく投資し勉強してきた、自称筋金入りの日曜プログラマーだ。
ところが好んで勉強したのではない。当方はゴム会社でOA担当にされ、わけのわからないままハードウェアーとソフトウェアーを自費で購入することになった。無機材研に留学するまでの給与はコンピュータ関係の費用としてすべて消えた。
なぜそのような馬鹿なことをしたのかは、後日説明するとして、まず勉強した結果をここで述べたい(今ブラック企業という言葉があるが、当方の置かれた環境を思い出すと、まだ現在のブラック企業の方が優しいと思っている。)。
学生時代のプログラミング教育はいい加減だった。大学の先生でさえプログラミングと言うものを正しく理解していなかった。単なる計算機を動かすための道具だと考えていた(これは事実で、当時大型コンピューターでプログラミングができれば情報関係の教授になれた時代である。学生のプログラミングスキルが教授を越えるようなことも起きていた。)。
名古屋大学の教授ですらこの程度なので、自分で勉強しなくてはいけないと危機感を持った。まずフォートランがやがて他のプログラミング言語に置き換わるのではないかと思った。
プログラミング言語は手続き型言語からオブジェクト指向の言語に進化したことは常識であが、オブジェクト指向のパラダイムが生まれたのは、日本で16ビットPC9801が主流となった1980年代で最近のことである。
しかし、この進化の過程で、FORTHが現れたり、フォートランに似たBASICが発明されたりした。
手続き型言語からオブジェクト指向の橋渡しとなるC言語の発明について、それぞれの言語のパラダイムを読み解くと、科学からの脱却をコンピュータと言う道具が、はからずも誘発した、と思えてくる。
換言すれば、科学の時代にコンピューターが登場したので、手続き型言語が生まれたと感じている。
もし、科学という哲学に囚われなかったなら、いきなりC言語が生まれていた可能性が高い、と思う。
C言語とアセンブラーとの親和性は高く、手続き型言語として使用できただけでなく、オブジェクト指向的プログラミングスタイルを行うこともできた。
C言語の仕様にはこのような大きな特徴があった。最初のオブジェクト指向言語C++は、プリプロセッサーでC言語のソースを吐き出す仕様で発明された。
カテゴリー : 一般
pagetop