Scribble at 2021-04-20 10:51:55 Last modified: 2021-04-20 16:35:53

なんだかんだ言って、洋書も含めると C 言語のテキストは10冊くらいあるし、K&R を始めとして、どれも古典的な実績としての評価がある。

2021年04月15日に初出の投稿

具体的にどういう教科書があるのかという話をしておくと、まず記事でベースにすると述べたハービソン III とスティール Jr. の『C リファレンス マニュアル』は、現在もオンデマンドで発行されているロングセラーの教科書だ。オンデマンド版は表紙がクリーム色になっているが、僕は黒い表紙の第5版を10数年前に買った。ちょうど、某新聞社でバナー画像を表示するプログラムを開発するのに、C 言語でないと受け付けないという仕様だったため、2週間くらいでざっと復習してからプログラムを書いてコンパイルしたファイルを CD-R へ焼いて納品したというわけである。C 言語について全く知らなかったわけではなく、ダイテル親子の教科書である『C言語 プログラミング』を読んではいたのだが、仕事で書いたのは初めてだった。動作原理はきわめて簡単だが、セキュア・コーディングには最初から(それこそ "security by design" などと言われる前から)気を使っていたので、ハービソン&スティールのマニュアルは数日くらい目を通しただけで、後は『C/C++セキュアプログラミングクックブック VOLUME 1』を読んでチェックに費やした工数の方が多かったくらいだ。

そして、そのダイテル親子の『C言語 プログラミング』は、もういまでは電気街やパソコン・ショップの街としては見る影もなくなった大阪日本橋のジョーシン・テクノランドの上階にあった(いまでもあるのだろうか)書籍コーナーで買ったものだ。アメリカの教科書らしく非常に丁寧な説明で書かれていて、日本の理数系のテキストに多い、行間を読まないと推論として筋が通らないという馬鹿げた風習、あるいは筆者の独り言を聞かされているような低レベルの編集とは一線を画している。それからというもの、日本でも数多くの教科書が出るようになったわけだが、C 言語については通俗的なレベルの教科書があまりにも多いという結果になってしまっている。

よく、日本の本で、屋上屋を重ねることになりはしないか云々などと断り書きを付けて実際に屋上屋を重ねている愚かなテキストがたくさんあるのだが、日本の学会や出版社には、知識を習得したり伝達するためのデファクト・スタンダードを確立して育てる(そして desicive な教科書を書いた人々を営業という観点だけでなく学術の観点からも称賛し、プロパーや学生はそういうものに安易にチャレンジして別の教科書を書こうとするよりも、定番のテキストを読んで実際に業績を上げることに専念する)という意志もテクニックも知見もないというのが僕の見立てだ。それゆえ、ノベール賞を受けるような人たちはいるものの、殆ど後が続かない。京大でも、同じ研究機関から受賞者を排出するという知的伝統がまるで醸成されないのも、あれやこれやとテキストを選ぶ無駄な手間を学生に負わせるからではないか。個々の出版社がそれぞれ勝手に、それこそ歯車の再発明を延々と繰り返してしまっているのだ。そして、東アジアの辺境国家の知的風習においては、それが「民主主義」とか「自由経済」というものらしい。自分たちの社会科学における無知を自覚することも恥じることもなしに出版に携わっているのだから、哲学者としてどころか、元雑誌編集者という立場から言っても、笑止という他にない。

システム開発の世界でも同様だ。documentation が貧弱なアプリケーションやプログラムのマニュアルを先んじて(それこそ公式よりも早く)書く人は称賛されるが、いまどき PHP のオンライン・テキストを無償で、いくら数百ページに登る膨大な分量で公表しても称賛はされない。「よくがんばりました」という upvoting は集まるかもしれないが、そんなものを真面目に読む学生やプロはいない。また、既にアメリカでは「行間を読む」ような馬鹿げた風習は排除されており、それどころか日本の愚劣な編集者たちが不問としているそういう陋習は、アメリカでは単なる文体の問題どころか、行間と呼ばれる脈絡や文化的な背景知識を共有していない移民に対する "institutional discrimination" であり、排除の姿勢だと非難されるだろう。「イキ」のようなプロパーとしての素養を知らないどころか、歴史や世の中に無知なサラリーマン編集者諸君は、もっと勉強するなり、自分たちがやっていることの意味合いをよく考えてもらいたい。女性のライターに教科書を書かせて「きめ細かく丁寧な解説」などと sexism の loaded language を帯に印刷しているのは、いまや日本だけなのだ。

他には、古典と言える K&R もあるし、石田晴久氏(K&R の訳者でもあった)の『Cプログラミング』がある。洋書としては、以下のとおりだ。最後の URL はオンラインでも公開されているテキストであり、PDF 版をダウンロードしている。

・Beginning C: From Novice to Professional

・C Primer Plus

・C++: The Complete Reference(第一部で C++ の subset として C を解説している)

・Programming in C(C Primer Plus もそうだし、Python や PHP の本も読んでいるが、Addison-Wesley から出ている "Developer's Library" のシリーズは良い本が多い)

・EFFECTIVE C

・https://publications.gbdirect.co.uk/c_book/

  1. もっと新しいノート <<
  2. >> もっと古いノート

冒頭に戻る


※ 以下の SNS 共有ボタンは JavaScript を使っておらず、ボタンを押すまでは SNS サイトと全く通信しません。

Twitter Facebook