(翻訳)出版社アスキーAmazonで購入するこの世の中に、自分のソースコードを芸術のように扱うプログラマーがいったい何人いるのだろうか。本書を読み終わった後、プログラミングって芸術だよなーって、一人で納得してしまいました。ソースコードは、コンピュータが解釈するもの。良いソースコードは、人が解釈できるもの。自らのプログラミングソースを優れたものとして自慢できるプログラマーに僕はなりたい。本書はそんな願いをかなえてくれる、すばらしきバイブルです。本書は、以下のような経験をしたことがあるプログラマーに是非とも読んでいただきたい。簡潔性(simplicity)明瞭製(clarity)一般性(generality)自動化(automation)この4つの原則を基本アプローチとして解説している。例は、C言語もしくはそれに似た言語で書かれている。作法という点で見るとどの言語についても言える、高水準なものが説明されている。本書の中で特に良かったと思うところを参考までにあげておきます。スタイルよいコーディングとはどのようなものかを解説しています。具体的なコード例が載っていて、なぜこれが良いのかという理由がはっきりしているのが魅力的です。名前についても書かれています。変数名やメソッド名、インターフェース名やクラス名にはどのような名前をつけたらよいのかも解説しています。名前は、情報を含み、簡潔で覚えやすくできれば発音可能な名前にしなければならない。他にも、聞きたくても聞けなかった疑問や、使えるTipsなど豊富に盛り込まれています。「オブジェクトサイズは言語に計算させよう」や「悪いコードにコメントはいらない。」など、プログラマの聖書となるようなアドバイスがたくさんです。インターフェース設計においてまず解決しなければならない問題をしっかりとした理由をつけて解説してくれています。インターフェース設計で注意する点やライブラリを作るときの心構えなども載っています。「インターフェースというのは要するに提供者と顧客の間の契約だ」「ペアとなる作業(リソースのオープンとクローズなど)は同一のレベルないし同じ場所で実行されるべきだ」「原則として、ライブラリルーチンはエラー発生時に単純に死んではならない」「ユーザに内緒で何かをするな」など、目からウロコが落ちるアドバイスばかりです。デバッグ「丁寧な治療よりもほんのちょっとした予防のほうが、現実にはるかに効き目がある」「プログラムをステップ実行するよりも、もっと真剣に考えたり、重要部分に出力分野自動チェックコードを追加したりするほうが効率的」「コードをなめるように読んで、変更を施さずにしばらくよく考えてみること」デバッグするときの金言集になっています。本書について説明すればするほど、本書の価値が下がってしまうような気がします。ほんとうに良いものに、説明は必要ない。そんな言葉が一番マッチする本だと思います。本書を実践している人たちがずばりこの人たちでしょう。Web系の方が強いですがスマホアプリもできます。Webサービス開発やスマホアプリ開発案件あればお声がけください。