June 23, 2006

センス・オブ・プログラミング!―抽象的に考えること・データ構造を理解すること


センス・オブ・プログラミング!―抽象的に考えること・データ構造を理解すること

キーワード:
 プログラミング、センス、データ構造、抽象思考、C言語、Java、参考書
プログラミングの本。この本の目的のようなところが書いてある部分を抜粋。
いろいろ書いてきましたが、言いたかったことは、

 それなりの規模のプログラムをきちんと動かすためには、プログラミング言語の文法の詳細などではない、別の技術――いうなれば「センス」が必要だ。

ということです。
 そして、その「センス」とは、
  • 「抽象的なレベルで考えること」
  • 「データ構造の重要性を認識すること」
ということだと私は考えています。
(pp.18)
また、以下に章のタイトルを示す。
  1. プログラムの基礎
  2. プログラムが動作する仕組み
  3. きれいなプログラムを書くために
  4. データ構造―基礎編
  5. モジュール分割
  6. データ構造―応用編
  7. X-Word―ワープロのプログラムを作る
2章までは、他のプログラミング入門書に書いてあるようなことが主な内容。単純な文法や、ハードウェアよりの動作原理など。

3章は言ってみれば、コーディング規約に関することが主な内容。

4章は、C言語を使用して、配列、リスト、2分木、ソートなどのデータ構造の基本的なことが書いてある。

5章からがこの本特有の内容で、簡易ワープロを作ってみるという題材からモジュール化の必要性、ワープロに必要な機能からデータ構造をどう捉えるかなどが書かれている。

正直、網羅性を求めて過ぎて、全体的にまとまりがないというか、説明不足な部分が多いような気がした。対象読者を絞って3章以降からの内容で濃いものにすればよかったのではないかと思う。

6章あたりから、Javaで実際に簡易ワープロを作るときに、どのように考えてデータ構造を構成するかという部分が参考になる反面、Javaにあまり詳しくない人には難しい内容となる。Javaの基本文法を押さえているだけでは少し理解するのが難しい。publicやインタフェースといったことがそこで詳しく説明されていないから。

なぜワープロという題材にしたのだろうか。もうすこしわかりやすい題材はなかったのだろうか。それとも自分が単にダメだったからそう思うのだろうか・・・。

3章までは復習を兼ねて勉強になった。特に3章のコーディングスタイルに対する著者の意見がとても参考なった。例えば、コメントはコードを見ればわかるようにするために、極力書かないようにすべきであるとか、プログラム中に同じ処理は書くなということなど。

また、イラストが入っていたり、重要なポイントは強調されているのでわかりやすい構成だと思う。

この本はどちらかというと、入門書と中級書の中間のような本で、プログラムをこれから学ぼうという人にはあまりお勧めしない。また、C言語とJavaが分かっていないと最後のほうは理解しづらいと思われる。それでも、勉強になる部分が結構あった。

読むべき人:
  • 初心者レベルを脱却したい人
  • 規模の大きなプログラムを組む人
  • しっかりしたデータ構造を持つプログラムを組みたい人
Amazon.co.jpで他の『プログラミング』関連書籍を見る



トラックバックURL

コメントする

名前:
URL:
  情報を記憶: 評価:  顔   星