Software Patterns:
 East Meets West

What is a “software pattern”?

The Software Pattern Community

What is a pattern?

Alexander’s Inspirations

Feng Shui

The “Quality Without a Name”

TTC1

Generativity

TTC 3

Property is Theft

TTC 8, 53

TTC 11

Positive Space (A Pattern Language, p. 518)

スライド15

TTC 11

Half-Object plus Protocol

Building with Generativity

The Western Way

A pattern style of development

An illustration:  FRESH WORK BEFORE STALE

Things I hear about Japan

Patterns are just The Gate

The state of the practice

スライド25

References

 
 


 

 パターンの概念は、まずは一人のアーキテクトによって創始されました。そのアーキテクトは建築物を建設する本当の建築家であって、ソフトウェアアーキテクトではありません。その彼、すなわち Christopher Alexander が、建築物の建設に就いて研究した成果が、彼の著書『 A Pattern Language(邦訳:パタン・ランゲージ)』と『 The Timeless Way of Building(邦訳:時を超えた建設の道)』の中に、建築に関するパターンとして描かれています。その一方で、Alexander は大変な実践家でもあります。彼が目指しているのは、コミュニティが自分たちのためのコミュニティ構築言語を創造するための支援です。コミュニティは、そのコミュニティに属する個人のための家やビジネスや憩いの場を建設し維持するために、そのような言語を使って語り合うことができます。彼がこのような目的を心に抱きはじめた当初のころには、建築家ではない一般の人々に自分の家を建てるための、ないし自分の家の設計に自ら寄与するための、実践的なガイダンスを提供することをゴールのひとつだと考えていたようです。
 しかしより深い処で、Alexander はもっと大きな何かを求めていました。1 つめは美です。彼は常に「普遍的な美」を追求してきたと言えるでしょう。美は人生を統合するための中心的要素の 1 つだというのが、彼の信じるところです。彼よりも前の時代を生きた西洋の建築家、たとえば、Palladio やヴィトルヴィウス(Vitruvius)もまた、このような信念を持っていました。いわゆる Vitruvius の 3 要素 (Vitruvian triad) として知られる「有用性 (utility)、耐久性(firmness)、快適性(delight)」は、この普遍的な美を意図した近似なのです。Vitruvius は、これら 3 つの要素すべてが具現化することは滅多にないというのが巨大システムの有する 1 つの特性だと知っていたのです。
 また、Alexander は 私たちが自分の内省にしたがったやり方に身を任せることに注目していました。それは「時を超えた」方法ですし、1 つの道、すなわち、「偉大なるタオ」です。これが、Alexander の求めていた 2 つめのものです。彼は、次のように書いています。「実のところ、パタンランゲージは、このような感情を改めて呼び覚ましてくれる以外に、取りたてて何をするわけでもないのである。… それは、まったく平凡なことであり、すでに人びとの心の中にあるものである。自分自身の最も素朴な最初の衝動こそが正しいのであって、それに身を任せさえすれば、正しい道へと導いてくれるのである。特殊な能力など何も必要としない。それは単に、自分がどこまで平凡なままでいられるか、自分が自然に受容するがままにできるか、自分の本心で感じることをそのままできるか、という問題である。それも、自分の心に対して忠実ということで、誤った学習によって心を曇らすイメージに対してではないのである。」
 パターンの内実とは、このようなものです。