プログラミング

作成日: 2000-05-07
最終更新日:

プログラミングについての本の紹介です。

P.J.Plauger, プログラミングの壷(I), 共立出版

ソフトウェア設計編である。このシリーズを読んでいる限り、プローガーの意見は一定しているように思える。 これは、絶対というものはない、ということに集約されるかのようだ。 構造化すればいいとか、オブジェクト指向が万能だとか、よく言われる。 そんなことは信じるな、とプローガーは手を変え品を変え言っている。私はどうか、 信じる前の段階である。

P.J.Plauger, プログラミングの壷(II), 共立出版

人間編である。私はこの巻が最も好きだ。プローガーには悪いのだけれど、人の不幸は密の味である。 いろいろ大変な目に合った体験談を読むと、大変なことをこなしてこられた方であると思い、尊敬する。 特に、標準規格制定の所は圧巻である。 私はどうか。大変な目に合わずに済ませようと、状況に目をつぶって回避して、 とんでもないことにあとからなってしまう、こんなことばかり繰り返してきた。

P.J.Plauger, プログラミングの壷(III), 共立出版

技術編である。ここは楽しく読むことができる。「バカは再帰的に循環する」という、 楽しい題名のエッセイもある。

Bil Lewis 他:マルチスレッドプログラミング入門, アスキー

昔マルチスレッドを研究開発していたことがあって、一から学び直そうと決めて買った。 しかし、例題が断片的にしか載っていないこと、試してみるためのプラットフォームが家には なかったことから、結局理解できないまま今まで来てしまった。

Steve Klieman 他,実践マルチスレッドプログラミング入門, アスキー

上記の轍を踏むまいとして買ってきたのはよかったが、結局この本も読み込まずに終わってしまった。 その後 Java によってマルチスレッドがあっという間に広がったのは御存知の通り。 当初の研究開発をきちんとしておけばと後悔しているが、まさに「後悔先に立たず」。

Kernighan,Pike:The Practice of Programming , Addison-Wesley

英語なので全部を読み通したわけではないが、付録の「箴言」だけ集めたところは読んだ。 頭ではわかっているのだが、なかなか実践できないのが私の弱いところだ。 「実践できないのは、わかっていないということだ」という誰かさんの声が聞こえる。

Inc. MIXSoftware (著): マルチスレッドプログラミング―C 言語ライブラリ Multi‐C を使う

マルチスレッドの基本概念から、実践的プログラミングまで解説されている。 C 言語でのライブラリとして実装するにあたり、setjmp と longjmp を駆使している。 この Multi-C ライブラリは、同梱されていたフロッピーディスクに収録されている。 このライブラリを使った応用例として、当時としても既に懐かしいインベーダーゲームが挙げられている。 ディスクにはこのゲームも収録されている (2016-07-24) 。

カーニハン、パイク:プログラミング作法, アスキー

2007年4月25日購入した。実は、上記の英語版を買ったことをすっかり忘れていた。 あとで練習問題にじっくり取り組むことで、お金を回収したい。 話題をいくつか

名前

名前の重要性は何度でも言っても言い足りないぐらいだ。ここでは、私の失敗を公開する。

マイクロソフト社の Excel で、次の表を作った。

フランス語表記日本語表記
C. Saint-Saënsカミーユ・サン=サーンス
G. Fauréガブリエル・フォーレ

この表からうまく「名前定義」をしたいと思った。Excel の「名前定義」とは、 「名前」を変数名のようにして扱うことである。 さて、名前定義をするためにこの表全体を選択して、プルダウンメニューの挿入から名前→作成をクリックした。 「名前の作成」ダイアログが出るので、上端行と左端列のチェックボックスをクリックしてOKをボタンを押した。

このようにすれば、このシートの中での名前(変数)が作成される。 つまり、C. Saint-Saëns という変数には 「カミーユ・サン=サーンス」が含まれると期待していた。 ところが、この変数を見ても「カミーユ・サン=サーンス」がない。 おかしい、 と思い数式バーの左にある名前一覧を見ると、驚愕の事実が判明した。 というのは、変数は C. Saint-Saëns ではなく、 C._Saint_Saëns となっていたのだ。 つまり、変数にある半角スペースと半角ハイフンは、 名前作成時に自動的にどちらも半角アンダースコアに変換されてしまったのだ。 もちろん、 G. FauréG._Fauré と変換された。 このほかにも、制限がある。

なお、上記の使える文字については、筆者の調査による。

二村良彦:プログラム技法, オーム社

私がプログラマとして駆け出しのころに買った、愛着のある本だ。 この本を買ったきっかけはこうだった。 私は会社へ入って仕事になじめないことで当惑を覚えた。そこでさまざまな現実逃避を 試みた。数学への没頭がその一つである。没頭という大げさなことではないが、 毎月数学セミナーを買ってその問題の中で遊んでいた。さて、数学セミナーの別冊に、 「数学とコンピュータ」という6巻組のムックが出ていることがわかった。 この別冊をすべて買って読んだところ、プログラマの適性を計るという記事が目にとまった。 この記事の著者が二村さんだった。よいプログラマと悪いプログラマの差は極端である、 というのが趣旨だった。いくつか参考文献が挙げられていて、ご自身の本が一冊だけ あげられていた。それがこの本である。 この本は PAD の本として知られているが、それよりなにより、正しいプログラムの 書き方を教えてくれたということで私にとっては意義深い本だ。

まりんきょ学問所コンピュータの部屋コンピュータの本 > プログラミング


MARUYAMA Satosi