2009年11月23日 21:00 [Edit]
美は動機か結論か - #書評_ - ビューティフルアーキテクチャ
オライリーより献本御礼。
美しい。「ビューティフルコード」も美しい一冊だったが、本書も実に美しい。
と同時に、「美」についての立脚点が、これほどまでに異なるのかということに驚きもした。
美とは動機なのか結論なのか。両書を読むと、ぶつからずにはいられない設問である。
本書「ビューティフルアーキテクチャ」は、「ビューティフルコード」の続編にあたる一冊。ここでいう「アーキテクチャー」は建築一般ではなく、コンピューターの設計に関わるものではあるが、コンピューター関係者でなくともその美は鑑賞できるはず。
目次 - O'Reilly Japan - ビューティフルアーキテクチャより- 目次
- 推薦のことば
- 訳者まえがき
- 序文 - Stephen J. Mellor
- はじめに
- 第1部 アーキテクチャについて
- 1章 アーキテクチャとは何か? - John Klein/ David Weiss
- 2章 2つのシステム:今風ソフトウェア物語 - Pete Goodliffe
- 第2部 エンタプライズアーキテクチャ
- 3章 スケーラビリティのためのアーキテクチャ設計 - Jim Waldo
- 4章 メモリーを作る - Michael Nygard
- 5章 リソース指向アーキテクチャ:「Web上にある」こと - Brian Sletten
- 6章 データの成長:Facebookプラットフォームのアーキテクチャ - Dave Fetterman
- 第3部 システムアーキテクチャ
- 7章 Xenと仮想化の美 - Derek Murray/ Keir Fraser
- 8章 Guardian:フォルトトレラントなOS環境 - Greg Lehey
- 9章 JPC:ピュアJavaのx86 PCエミュレータ - Rhys Newman/ Christopher Dennis
- 10章 Jikes RVM:メタサーキュラーな仮想マシンの威力 - Ian Rogers/ Dave Grove
- 第4部 エンドユーザアプリケーションのアーキテクチャ
- 11章 GNU Emacs:漸進的機能追加方式が持つ力 - Jim Blandy
- 12章 バザールが伽藍の建築に乗り出す時 - Till Adam/ Mirko Boehm
- 第5部 プログラミング言語とアーキテクチャ
- 13章 ソフトウェアアーキテクチャ:オブジェクト指向対関数型 - Bertrand Meyer
- 14章 古典再読 - Panagiotis Louridas
- あとがき - William J. Mitchell
- 著者・編者紹介
- 索引
それでは、アーキテクチャーにおける美とは一体なんだろうか。
結果、である。
現在、そして将来の要求を満たす結果として表れるのが、アーキテクチャーの美なのである。
これは、コードの美とは実は正反対でもある。コードにおける美というのはそれ自身が目標たりえる。ゆえに「美しくも使えない」コードというのは決して少なくない。Y Combinatorなどはその代表格だ。あれほど美しく、しかしその美しさを即戦的に使うことができないというものも珍しい。
しかし「美しいが使えない」というのも、アーキテクチャーという「背景」があってこそ成り立つ概念であり、そしてアーキテクチャーが変わることによって「美しいが使えない」が「美しくかつ使える」ものになることは少なくない。スクリプト言語の隆盛も、このこと抜きには語れない。
だからこそ、アーキテクチャーは美しくある前にまず強くなければならない。アーキテクチャーはコードの上位概念として捉えられがちで、それ故アーキテクトはコーダーよりも「えらい」という誤解はIT業界に限らず根強い。
しかし、アーキテクチャーはインフラストラクチャーでもある。「その上に乗る」という観点から見れば、アーキテクチャーはコードの「下位」(インフラ)概念でもある。
本書の方が前著よりも「実戦的」な理由は、そこにあるのだろう。
そのこともあってか、本書の方が前著より「使える」感が強い。実際本書に登場するアーキテクチャーは、全て理論でも理想でもなく実際に作られ、そして利用されてきたシステムについて解説されている。
アーキテクチャーにとって最も重要なのは、それがきちんと建てられ、立ち続けること。
美では、実はない。
しかし数々の挑戦に耐え残ったそれに、美しさを感ぜずにはいられないのはなぜだろう。
「21世紀版 マーフィーの法則」 P. 320要は誰が正しい(ライト)かではなく、誰が生き残った(レフト)かだ。
It's not who is right, it's who is left.
美しさとは正しさだろうか。
だとしたら、本書の美しさは、 right ではなく left である。
美味に留まらず栄養満点な美しさを、是非本書で味わってほしい。
Dan the Ordinary Architect
この記事へのトラックバックURL
世界のすべての構造の基本がフラクタルだとは思わないけれど、極大のものと極小のものを連絡している各位階が入れ子状にできているっていう考え方は、ひどく説得力があると思います。
話は違いますが、「あいつ、嫌な奴だなあ」って思う奴って、自分ひとりにだけそうなんじゃなくて、誰に対してもそういう奴なんで、そういう奴は、力の背景を失えば、誰も相手にしなくなる奴なんだと思います。そう考えると、誰か強くて嫌な奴が自分を簡単につまみつぶせるかというとそんなこともなくて、恫喝というのは、たいてい心理的効果しかないから(実力行使というのはなかなかできないものだから)、他人の言うことはあまり生真面目に真に受けるべきではないということになります。そんなわけで、また、「ものごと何でも額面通り受け取るな」の話に戻ってしまいました。いや、この話は大切な話だと思うんです。もちろん、「いつも、なにごとも馬鹿にせず、油断するな」という教訓と対の話です。
可読性(見た目の美しさ)と実用性(機能美)で重みを置くべき比率が相当にことなるということですね。
ソースコードで前者の比率を上げても、バグにならなければよほど効率の悪いものでもないかぎり問題視されませんから。
この書評、ブラボー
