午前中にプログラミング環境向上のために
・まともなMakefileの書き方の勉強
・CVSの導入
を行なった。

今までMakefileは、誰かが書いたものを自分のプロジェクト用に変更して使っていたため、どんなお約束で動いているのかよくわかっていなかった。そこで、研究室の本棚にあった
マイク ルキーダス, アンディ オラム, Mike Loukides, Andy Oram, 引地 美恵子, 引地 信之
GNUソフトウェアプログラミング―オープンソース開発の原点
を読んで、理解した。

具体的にはSUFFIXルールのところと省略記号の内容を理解した。
それによって、デバグ用とリリース用にルールを分けることが出来た。

以前、同書で勉強したEmacs+gdbのところとあわせるとよりよいコーディング環境になったと思う。

このIDE全盛時代に逆行しているのは承知しているが、CUIでのコーディング環境というのも使う機会は結構多い。


午後からはデザインパターンについて勉強して再利用性の高いプログラムを書こう!ということでデザインパターンの本を図書館で探して読むことにした。

GOFのデザインパターンの本もあったが、その前に見つけた
平澤 章
オブジェクト指向でなぜつくるのか―知っておきたいプログラミング、UML、設計の基礎知識―
という本が気になり、結局午後はずっとそれを読んでいた。(途中で家賃を払いに柏まで行ったが。途中で高校の前を通りかかったとき校門のところにいた女子高生に「がんばってくださーい」と手を振られてしまった!!なんと!!ロードレーサーに乗ってるヤツなんて珍しいからか。以上、余談)

今まで、オブジェクト指向の言語としてJavaとかC++とかよく考えないで使ってきたが、一向に高まらない再生産性に業を煮やしていたところにこの本はある種の答えをくれたように思う。

オブジェクト指向は、現在プログラミングに限らず設計やモデリング、分析など広い分野で使われている。そのため、分野ごとに用語の用法がちがったりしていて用語の混乱が見られる。その混乱と誤解の真っ只中にいたのだなぁ、ということがこの本を読んでわかった。

またこの本は、UMLやデザインパターン、モデリング、設計、分析など様々な用語がオブジェクト指向のどのあたりに位置するのか、というある種の地図を与えてくれた。

さすがに図書館に置いてあるだけあってよい本だと思う。もっと図書館を活用すればよりよい学生生活を送れるだろう。