6

プログラミングの聖杯は、一度問題を解決し、その解決策を永遠に継続的に再利用することです。それでも、最善を尽くしたにもかかわらず、よく知っている問題をやり直していることがよくあります。GoF の設計パターンは別として、カレンダー、コンテンツ管理、個人/組織のアドレス帳などを設計したことが何度かあります。

一般的な高レベルのビジネス設計を熟読できる優れたリソース (書籍、Web サイトなど) があるかどうかを知りたいです。私のプロジェクトと私が発見する可能性のあるパターンとの間の要件は異なることを認識していますが、問題の核心は同じままであり、苦労して得た多くの経験から引き出すことができると期待しています. さらに、これはオタクですが、デザインが生まれるプロセスと決定の背後にある理論的根拠について読むことを楽しんでいます. ショップ、スタートアップ、コーダーがデザインについて透明性を保っているのが好きです。(例: 37Signals、Garret Dimon)

この投稿ではこの件に触れ、これらの高レベルの設計パターンを「機能設計パターン」と呼んでいますが、それが私が説明している一般的な用語であるかどうかはわかりません。「Functional Design Patterns」で検索してもあまりヒットしませんでした。「Domain-Specific Design Patterns」と「Data Model Design Patterns」も検索しましたが、後者は興味深い結果を提供したので、これはより的を射ているかもしれません。私が何を言おうとしているのか、どの用語で分かりますか?良いリソースはありますか?新しいデザインを透過的に紹介している他のショップ/コーダーはありますか?

4

6 に答える 6

2

Hillside GroupPattern Languages of Programsイベント、またはこの取り組みから生まれた本について聞いたことがない場合は、まずそこから始めます。私はこの努力にうれしさしかありませんでした。

于 2009-09-07T15:42:18.653 に答える
2

データ モデリング、特に概念スキーマを見たことがありますか?

このような抽象的なパターンで現実的に達成できることを意識する必要があると思います。パターンが抽象的であるほど、提供できる実装の詳細は少なくなります。悪魔は細部に宿る - したがって、抽象的なパターンにはまだやるべきことが残っています。

考えられるすべての問題に対処できる単一のソリューションがあるとは思いません。実用的な観点からは、すべての問題に対処できるパターンよりも、複雑さを管理する方法を調査する方が有用であると私は主張します。

于 2009-09-07T15:43:35.370 に答える
0

アナリシスパターンについても考えます。

マーティン・ファウラーを読んで来たと思います。(グーグルは私の記憶が正しかったことを私に示します...)

于 2009-09-07T16:21:23.083 に答える
0

フィードバックをありがとうございました。私はプログラマーのツールボックスに共通する低レベルのデザインパターンを知っていて、過去にヒルサイドグループを訪れたことがあります。私はそこでもっと時間を過ごします。

さらに調べてみると、私が求めているデザインパターンはデータモデリングと密接に関連していると思います。私は一緒に投げた予定表データモデルを作り直していますが、新しい要件のために、いくつかの機能強化/修正は少し厄介でした。残念ながら、設計が進むにつれ、私は道を十分に進んで、要件を明らかにし、少しバックトラックしてから、経験から発見された欠点に基づいて改造しなければならないことがあります。私の経験から、データモデルは、システムの優雅さだけでなく、そのUIも決定する上で大きな役割を果たします。

推奨される他のリソースについては、引き続き投稿します。

于 2009-09-07T20:01:40.827 に答える
0

優れたデータ モデリング ブックの場合:

Hay: エンタープライズ モデル パターン

Fowler: 分析パターン

Silverston: データ モデル リソース ブック (Vols 1、2、3)

Blaha: データ モデリングのパターン

于 2013-04-13T05:02:59.467 に答える
0

私は以下を見つけました - それらがあなたにどの程度関連するかはわかりません:)

一般的に参照される本:
- Gamma、Helm、Johnson、および Vlissides によるDesign Patterns (Addison Wesley Longman、1995 年、ISBN 0-201-63361-2)

于 2009-09-07T15:49:21.677 に答える