Code Reading―オープンソースから学ぶソフトウェア開発技法
|
| 価格: |
おすすめ度:
商品の詳細
- Amazon.co.jp ランキング: #15605 / 本
- 発売日: 2004-06-01
- 版型: 単行本
- 523 ページ
エディターレビュー
日経BP企画
コード・リーディング
プログラムのソース・コードの読解に必要な基本事項や手法を解説する。プログラミング技術向上には,ソース・コードを「読む」ことが欠かせないとし,効率的にソース・コードを分析するためのポイントを多面的に説明する。NetBSDやX Window Systemなどのソース・コードを実際に例示しながら,データ構造や制御フローといったプログラミングの基礎知識はもちろん,さまざまな型式のドキュメントの読み方,効果的なツールの利用法などを述べてある。付属CD-ROMには,サンプルをはじめ,Ruby,WideStudioなどのソース・コードを多数収録する。
(日経Linux 2004/09/01 Copyright©2001 日経BP企画..All rights reserved.)
出版社/著者からの内容紹介
本書は、オープンソースソフトウェアのソースコードを読み解くことで、そこに存在するさまざまなテクニックやノウハウ、Tipsを習得するためのガイドブックです。実際のソフトウェアのソースコードを参照して「ソースコードを読む力」を習得すれば、「美しいソースコードを書く力」も身に付きます。
本書の内容をマスターすれば、次のようなことができるようになります。 ・本格的なソフトウェアのコードを読んで理解すること ・ソフトウェア開発をめぐる、多くの重要な概念を本当の意味で理解すること ・大規模なコードを調べるためのノウハウを得ること ・高級言語から低レベルの言語まで、重要なプログラミング言語を一通り読むこと
・現実のソフトウェアプロジェクトの複雑さを理解すること
「コードを読む」ためには、単にコードを眺めているだけでは、何の意味もありません。「どう読めばよいのか」「効率的に読むためにはどうすればよいのか」について、さまざまな面から解説しています。
「ドキュメント」(付属ドキュメントやコード内のコメント)を活用したコードの読み方、単純な検索ツールから開発環境付属のツールまで「コードを読むためのツール」の効率的な使い方など、あまり触れられることがないテクニックも、余すところなく紹介してます。
11章では、それらのテクニックを駆使して、「ソフトウェアに新しい機能を実装する例」が紹介されています。スクラッチからコードを書くのではなく、既存のコードを活用すべく、コードを探し、読み、変更し、最小限の労力で実現していくさまは、推理小説を読むような醍醐味があり、実際の開発現場でも参考になることでしょう。
付属CD-ROMには、Apache、HSQL、NetBSD、Perl、Tomcat、X Windowシステムなど、オープンソースソフトウェアの完全なコードが、4万以上のファイル、700万行以上のソースコードが収録されています。さらに、日本語版には、RubyとWideStudioのソースコードも収録されています。
内容(「BOOK」データベースより)
本書は、生の知識を得る最良の方法である、ソースコードを読む技術を解説しています。ソースコードこそソフトウェアのすべての知識の源です。効率よくソースコードを読むことは、効率よく自分の能力を向上させることにつながります。
カスタマーレビュー
Code completeと併せて読むとよい
CodeCompleteとCodeReadingを併せて読むとよいと、
組込み系のSESSAMEプロジェクトのメーリングリストと、
OS系のTOPPERSプロジェクトのメーリングリストで推薦を受けました。
CodeCompleteは読んだことがあったので、CodeReadingを読んでいます。
オープンソースを仕事にしているので、たいへん役立っています。
MISRA-Cは研修で取り上げてきたので、本書も研修の資料としても取り上げるように準備中です。
プログラマ以外の人も読んでみると良いのでは
私はプログラマではありません。コンピュータの運用保守の仕事をしています。でも、自分たちの使用しているオープンソースのソフトウェアがどんなコードで書かれ、それがどのような仕組みで動作しているのかを知っておくことは決して無駄なことではないと思います。業務でオープンソースのソフトウェアを使用した運用保守をしている時、コードのレベルで動作を知っていればと痛感する場面は多くあります(セキュリティホールが発見されたとき、修正パッチが出るのを待って、それを適用することだけが保守の仕事ではありません)。運用保守の技術者がデベロッパの視点を持つことができれば、受身がちだと思われがちなこの保守サービスをもっと能動的なサービスとして提供できるようになるのではないかと思っています。私はずっとこのような本が出るのを待っていました。C言語等の熟達者(あるいはデベロッパ)向けの本かと思いますが、是非、そうでない方も手にとって読んでみてください。
全てのプログラマに読んで欲しい最高の教科書
「人が書いたソース・コードを読む」ということは、プログラマにとって最も重要な訓練だということは常々言われてきました(他の人か書いた文章を読まずに、良い小説が書けるでしょうか?)。しかし、プログラムを書くためのの教科書がこれだけ多く発刊されていながらも、他の人の書いたコードを読むための教科書は今まで書かれてきませんでした。この "Code Reading" は、その「人が書いたコードを読むための本」です。
オープン・ソース・ソフトウェアを題材としているため、(OSS で最も人気のある) C言語、C++、Java が解説の中心になっています。しかし、各言語に特化したいくつかの章を除けば高級言語からアセンブラまでの全ての言語、全ての規模のプロジェクトに適用可能な内容です。一方、C 言語に特化した章では C 言語のイディオムや注意点が幅広く紹介されているため、中級レベルを目指す C プログラマが入門書の次に読むテキストとしても適切でしょう。
著者は「コードを読むには目的(技術の向上、構造の解析など)が大切」と解く一方で、「小説のようにコードを読む楽しみ」を訴えています。なかなかその域には達っせそうにありませんが、数ある OSS の中から厳選されて CD-ROM に収められた 1700万行のソース・コードは、当面の欲求を満たすのには充分すぎる量だと言えるでしょう。翻訳も日本を代表する大ハッカーの監訳で非の打ち所がありません。全てのプログラマにお勧めできる一冊です。





