GNU Make 第三版

それはさておき、Makeのプログラミング言語としてのおもしろさに思わず目覚めてしまいました。今までコードを作るために仕方なくやっていたMakefile作りが、今ではすっごい愉しいです。この愉しさを教えてくれたのが、GNU Make 第3版。これは本当に良い本ですよ!

とりあえず良いところを箇条書きにすると、

  1. たとえ無知でも、知りたい所に合わせてどっからでも読めること
  2. 入門書であり、実践的なHackingテクニックでもあること
  3. makefileを書くと言う作業が、泥臭い単純作業から知的なハックに変わること

な感じでしょうか?

例えば「自動的な依存関係の生成」「大きなプロジェクトの管理」等、興味のある話題(問題を解決したい所)から読んで行きたいけど、Makeについて基本的な所で無知かもしれない。そんな場合でも(対象を)理解するのに必要な基礎知識を「基礎だから」と無視せず軽く説明してくれて、且つ詳しい解説の章へナビゲートしてくれるから、何処からでも読み始められます。(おかげで自分に必要な知識のみ短期間で得ることが出来る)

そういう配慮があっても、説明が脇道にそれすぎて話題が拡散したり集中力をそがれたりしないのもまた、この本の凄いところです。

もう一つは、Makeを何も知らないユーザに向けて書かれた入門書でありながら、実践的なハックを多数盛り込んでいるところ。良いMakefile(=コード)を作るための実践的な手法が満載です。本書はMakeの機能論ではなくデザインスタイルに言及しています。段階を追って改良されていく Makefile は正にハックの醍醐味です。良い設計に関する考察から、最適化、コードリーディング(Linuxカーネルmakefileリーディング!)にまで。まるで「Effective MakeFile」とかいった趣です。(でも、入門書なんですよ〜。)

Makeを一寸でも使う人なら、買って遊んでみて損のない本です。お勧めです♪