珠玉のプログラミング―本質を見抜いたアル...

Jon Bentley - ピアソンエデュケー... 価格 ¥ 3,570
home書籍CDDVDゲームソフトウェア家電キッチンおもちゃ・趣味
珠玉のプログラミング―本質を見抜いたアルゴリズムとデータ構造

Jon Bentley
ピアソンエデュケーション

価格(new/used): 3,570 円 / -- 円 より
発売日: (2000-10) アマゾン売上ランキング: 31242 位
単行本 / 通常24時間以内に発送
[ユーザーによる評価] 平均評価: 4.5 / 総数: 10件

「プログラミング」と言う作業を見つめなおすのに最適。「設計する」と言う概念がよく分からない初級プログラマにも
昨今のソフトウェア開発においては大抵がRDBMSベースのもので開発ツールも整っており、
アルゴリズムや計算量、メモリ使用量およびそれらの結果としてのパフォーマンスなどを
真剣に考えないと全く仕事にならないケースと言うのはあまり無いと思われ、それはそれで
幸せな時代とも言える。

本書はそんな「幸せな時代」に逆行する形となるが、上記で述べた内容(アルゴリズム、
計算量、メモリ使用量、パフォーマンス)をメインテーマとしており、それぞれ

1)提示された問題の解法を著者の視点で説明
2)ソースコードとして具現化
3)ソースコードについて更なる考察
4)同じテーマでの練習問題の提示

と言うスタイルで記されている。
特筆すべきなのは問題を解くにあたって筆者が最終的なソースコードにたどり着くまでの
「思考」(いわゆる設計作業)が文章や擬似コードや図表で表現されている事である。
他のアルゴリズム関連の書籍では大抵いきなり完成形のコードが出てきてそれらを説明して
終わりと言うパターンが多く、それではただの丸暗記であり、初級プログラマにとって
本当の意味でのトレーニングにはならないと思う。

個人的な見解だが特に初級プログラマのステップアップの壁に一つには「設計と言う概念の
理解」が挙げられると思っており、本書はそんな概念を掴みきれていない初級プログラマにとって

あぁ、プログラマの頭の中ってこんな風に試行錯誤しながらコードを紡ぎだすんだ!

と言う感覚が味わってもらえるような造りとなっており、非常に好感が持てる。
練習問題が結構多いので勉強会のネタにも使えそうである。
理解しながら読み進めるのは意外と大変かもしれないが読み終えた時にあなたは
一皮むけたプログラマになっているはずである。
納得!アルゴリズムは重要
「珠玉」ってなんて読むんだろう?興味を持ち、「本質を見抜く」というサブタイトルに惹かれました。プログラマーならば、アルゴリズムが重要であることは誰もが知っている、そしていくつかのアルゴリズムを知っていることだと思います。しかし本書を読むと、なぜアルゴリズムが重要なのか?どうすれば高速化できるのか?わかりやすくなるのか?メモリを減らせるのか?といった疑問が解き明かされていくのです。ページをめくる毎に”納得!”させられます。今までの漠然とした理解ではなく、本質を見抜いた理解に達すると、視界が開け非常に気持ちがいいものです。
だまされたと思って、一読ください。決して損はしません!!
プログラマなら読むべき本
今までいろいろなアルゴリズムの本を見てきましたが、
ほとんどが理論的であり、眠気を誘うものばかりでした。

この本は、アルゴリズムが何であるか?データ構造とは?を
根本から解説しているのですが、プログラマであれば、
非常に興味をそそられる内容になっています。
サンプルプログラム等は、CやC++で書かれていますが、

他の言語しか知らなくても十分理解できるレベルです。

参考本情報が豊富にありますし、少しずつ読んで見ようと思います。

アルゴリズムって何?
 今まで、アルゴリズム関係の本をいろいろと読んできた。しかし、この本は何なんだろう。自分ではベストだと思っていたアルゴリズムが、かなりの確率で否定される。

 「これ以上は無理かな?」と思っていた巨匠アルゴリズム+自己流アルゴリズムが、それ以上の高効率で処理されている。あるいは、「出来ないよ、そんなこと!」を「可能」にしている。まさに、「思い込み」は禁物だということを改めて感じさせてくれる、アルゴリズムにこだわる人には、まさに「目のウロコが落ちる」一冊。「速い」と「メモリを食う」は相反しないことに気づかされる。
 近年のコンピュータの高速化により、アルゴリズムの効率が無視されがちな企業プログラマには是非とも読んでいただきたい一冊。
 パズル的な面もあるので、アルゴリズムとパズルが好きな方は是非とも手に入れるべし!

視点が変わる本です
この本は、プログラミング言語を学ぶという本ではなく、どのようにしてアプローチをしていくかという本です。たとえば、ある著名人は、よいプログラマーとは、机上でまず詳細設計を完璧にするものだといっていましたが、まさにその通りのことが書いてあります。

いきなりプログラムを書くのではなく、色々なアプローチからプログラムの骨格を作り上げていくことが出来る一冊です。
中堅プログラマーの方が、上級プログラマーになるためには必須の本だと思います。私のバイブルでもあります。