Pattern
とは…という定義を書きたい。
https://gyazo.com/2b1f42e58a6f29f4f7b18009d1298136
『パタン・ランゲージ』ではパタンについて「私たちの環境にくり返し発生する問題を提起し、その問題にたいして、二度と同じ結果が生まれないよう、解答の要点だけを明示している」と説明がある。 他にもさまざまな文献でさまざまな著者がパターンを定義している:
「あるコンテキストにおける問題に対する1つの解法」() the elements of the language are "patterns", elements which are a collective memory of things which work in our surroundings.
そうした言語の要素が「パターン」であり、パターンは我々の身の回りで作用する共同記憶である。
A pattern language is a collection of structures, called patterns, that includes rules for how they can be composed into a system. Individual patterns are elements of form that encapsulate design tradeoffs called forces, much as modules encapsulate the relationships between implementation procedures and data.
パターンランゲージとは、パターンと呼ばれる構造の集合体であり、どのようにそれらをシステムとして構成するかのルールを含んでいる。個々のパターンは、設計のトレードオフ(フォースと呼ばれる)をカプセル化する形の要素である。それは手続きの実装とデータの関係をカプセル化したモジュールと似ている。
―James Coplien『Lean Architecture for Agile Software Development』Chapter 5 What is a pattern? One simple definition is that a pattern is a repeatably applicable solution to a problem that arises in a specific context.
パターンとは何か?簡単に定義すると、パターンとは特定のコンテキストで発生する問題に対して、繰り返し適用可能なソリューションである。
As I’m partial to Alexander’s view, I’ll quote him directly:
私はアレグザンダーの考えが大好きなので、彼の言葉を引用する:
"Each pattern is a three-part rule, which expresses a relation between a certain context, a problem, and a solution."
『パターンには3つ部分からなるルールがあり、特定の「コンテキスト」「問題」「解決策」の関係を表している』
As an element in the world, each pattern is a relationship between a certain context, a certain system of forces which occurs repeatedly in that context, and a certain spatial configuration which allows these forces to resolve themselves.
世界の構成要素としてのパターンは、「コンテキスト」「そのコンテキストで繰り返し発生するフォース(力)のシステム」「そのフォースが自然と解消される空間の形状」の関係である。
As an element of language, a pattern is an instruction, which shows how this spatial configuration can be used, over and over again, to resolve the given system of forces, wherever the context makes it relevant.
言語の構成要素としてのパターンは、関連するコンテキストにおいて、フォースのシステムを解消するために、こうした空間の形状をどのように使用するかを繰り返し命令するものである。
The pattern is, in short, at the same time a thing, which happens in the world, and the rule which tells us how to create that thing, and when we must create it. It is both a process and a thing; both a description of a thing which is alive, and a description of the process which will generate that thing.
つまりパターンとは、世界で発生するモノであると同時に、モノの作り方やいつ作るべきかを我々に教えてくれるルールである。プロセスでありモノである。生きているモノの説明であり、生きているモノを生み出すプロセスの説明である。
―Joshua Kerievsky『Refactoring to Patterns』ch3 Patterns
hr.icon
パタン派とパターン派がいる。誰か解説してほしい kakutani.icon 僕がパターンと言うときは、いわゆる「うまくいったことを言語化しよう」という試みで名前がついたものを指してます(パタンかどうかはわからない)tkskkd.icon
パタンと言うときは、アレグザンダーや中埜さんが言うところのパタンであり、形によってイメージできるものという意味で使っています。この定義はオレオレ定義なので参考程度に!!tkskkd.icon そうですね、そのイメージです。中埜さんがいつも「形大事」と言うもんで。中埜さんリスペクトの要素が強いです。tkskkd.icon
昭和60年以前はパタンが主流だった、ってだけっぽい?kdmsnr.icon
https://gyazo.com/003469eab56b74c3ddbff6f1a759dc19
従来「パタン」しか認めていなかったので,
1978年の出版『認識とパタン』でしたね。まぁパターンでいいんじゃないでしょうかtkskkd.icon Patternの訳語は「パタン」一択だったのが、昭和の終わりに「パターン」も認められて定着したのかあ。ワンパタンの違和感、なるほど… kakutani.icon
パタンのクリストファー・アレグザンダーの定義を今さらだけど改めてメモってみようかな、と思ったけど、うっかりPatternとパタンとパターンのページを作ってしまった…。本スレはPatternにしようかな、と思った(パタンとパターンの日本語としての違いは、カタカナ語表現や流派の違いがあるということを学んだので 。 パターンのフォームがいろいろあるよ、っていう解説? まとめをどこかで読んだけど思いだせなくなってしまった… → パターン形式