または"デザインパターンリソース"('は"参照"を意味します。"はオンデマンドで検索します。 ")そしてすべてのリストを本文に移動(または削除)しますか?
.NET Designパターンとアーキテクチャのガイダンス
いくつかの適切な実装については、 dofactory (didn 'ただし、本は購入しません。
この質問に完全で包括的な回答が得られたので、'終了しました。他のデザインパターンは、これを複製として質問し、正規のQ & Aとして指定し、このトピックのペアに回答します。
回答
デザインパターン:要素of Reusable Object-Oriented Software は、デザインパターンに関する標準的な本の私の定義に非常に近いものです。 そのウィキペディアの記事(私の強調)によると:
の最初の発行日この本は1994年10月21日で、1995年の著作権があり、2010年7月の時点で、この本は 38回目の印刷でした。この本は、1994年10月にオレゴン州ポートランドで開催されたOOPSLAミーティングで最初に一般に公開されました。ソフトウェアエンジニアリングの分野に大きな影響を与えており、オブジェクト指向設計の理論と実践の重要な情報源と見なされています。 500,000部以上が英語と他の13言語で販売されています。
ウォードカニンガムデザインパターンのパイオニアである、は、 WikiWikiWeb で本のパターンのオンラインカタログを管理しています。 。そして、デザインパターンに関するWikipediaの記事によると(ここでも、私の強調):
デザインパターンは、1994年に 『デザインパターン:再利用可能なオブジェクト指向ソフトウェアの要素』が出版された後、コンピューターサイエンスで人気を博しましたいわゆる「GangofFour」(Gamma et al。)による。
このジャンルで注目すべき記事と同じ:
私がファウラーの本を読んだことがあるものの中で、それは非常に影響力があり、よく読んでいます。ある時点でそれは私の好みには少し曖昧ですが、全体的には楽しい本です。この本に含まれているパターンのオンラインカタログがあり、最小限の説明が付いています。
また、Head First Design Patternsをざっと読んだことがあります。また、Head Firstシリーズの他の本を読んだことがある場合は、シリーズのほとんどの本:
Head Firstは、多くのトピックを紹介する一連の入門書で、 O “Reilly Media。これは、非正統的で視覚的に集中的な、読者が関与するパズル、ジョーク、非標準のデザインとレイアウトの組み合わせ、および読者を特定のトピックに没頭させる魅力的な会話スタイルを強調しています。
一般的な再利用可能なソリューションはすべてデザインパターンと見なすことができるため、「デザインパターン」という用語はやや曖昧です。私は常に、1つで説明されているソリューションにラベルを付ける傾向があることに気づきました。上記の著名な本、より具体的にはGang of FourとFowlerの本の中で、デザインパターンは独自の開発プロセスに従わず、通常のソフトウェアソリューションです。たまたま非常に再利用可能であり、特定するのが非常に難しい。
しかし、両方の本のオンラインカタログを言語固有の本の内容と比較すると、「テンプレートとして使用されることが多いことに気付くでしょう。したがって、両方の本は標準に非常に近いと言えます」どちらの本もオブジェクト指向プログラミングに限定されていますが、歴史的な観点からはGoFの本の方が重要です。
コメント
回答
回答
mg src = “https://i.stack.imgur.com/Fl7XR.gif” alt = “Head First Design Patterns” title = “Head First Design Patterns-O ' Reilly Media”> pの本の説明>
いつでも、世界のどこかで、誰かがあなたと同じソフトウェアデザインの問題に苦しんでいます。ホイール(またはさらに悪いことに、パンクしたタイヤ)を再発明したくないことを知っているので、同じ問題に直面した人々が学んだ教訓であるデザインパターンに目を向けます。デザインパターンを使用すると、他の人のベストプラクティスと経験を活用できるため、他のことに時間を費やすことができます。もっとやりがいのあること。もっと複雑なもの。もっと楽しいこと。
重要なパターンについて学びたい-なぜそれらを使うのか、いつ使うのか、どのように使うのか(そしていつ使わないのか)。しかし、本の中でパターンがどのように見えるかを知りたいだけでなく、「野生」でどのように見えるかを知りたいのです。ネイティブ環境で。つまり、実際のアプリケーションで。パターンがどのように見えるかも学びたいのです。はJavaAPIで使用され、Javaの組み込みパターンサポートを独自のコードで活用する方法です。
実際のOO設計の原則と、上司が継承について語ったすべての理由を学びたいと考えています。間違っている(そして代わりに何をすべきか)。次回「デザインパターンのない小川を上る」ときに、これらの原則がどのように役立つかを学びたいと考えています。
最も重要なことは、デザインパターンの「秘密の言語」を学び、保持できるようにすることです。マティーニを一口飲む間にコマンド、ファサード、プロキシ、ファクトリーを驚くほど巧妙に使用していることを同僚がさりげなく言及したとき、同僚と一緒に(そしてカクテルパーティーのゲストを感動させて)自分のことを話します。思ったほど単純ではなく、ファクトリーがどのように誤解されることが多いか、またはデコレータ、ファサード、アダプタの実際の関係についてです。
Head First Design Patterns を使用すると、「Decoratorが「TradingSpaces」ショーの何かであると考える恥ずかしさを回避できます…
コメント
回答
回答
デザインパターン:再利用可能なオブジェクト指向ソフトウェアの要素
wikipedia :
デザインパターン:再利用可能なオブジェクト指向ソフトウェアの要素は、ソフトウェアの一般的な問題に対する繰り返しの解決策を説明するソフトウェアエンジニアリングブックです。設計。この本の著者は、エーリヒガンマ、リチャードヘルム、ラルフジョンソン、ジョンブリシディーズであり、グラディブーチによる序文があります。著者は、ギャングオブフォー、GoF、またはGo4と呼ばれることがよくあります。オブジェクト指向プログラミングの機能と落とし穴を探る最初の2つの章と、23の古典的なソフトウェア設計パターンを説明する残りの章。この本には、C ++とSmalltalkの例が含まれています。
回答
最も優れたデザインパターンのWebサイトの1つは、最初のWikiであるWardのWikiです。開始ページとしては、 http://c2.com/cgi/wiki?HistoryOfPatterns を参照してください。
1987年、WardとKentは、設計の仕上げに問題があったTektronixのSemiconductor Test Systems Groupと相談していました。彼らは、自分たちが研究していたパターンを試してみることにしました。建物の占有者が設計する必要があると言ったアレクサンダーのように、ワードとケントはユーザーの代表者(トレーナーとフィールドエンジニア)に設計を完成させました。
ワードは5つのパターンの「言語」を考え出しました。これは、初心者の設計者がSmalltalkの長所を活用し、その短所を回避するのに役立ちました…
WardとKentは、ユーザーが設計したインターフェースの(確かに質素な)優雅さに驚いていました。オーランドのOOPSLA87でのこの実験。彼らはパネルの位置を書き、Norm Kerthのワークショップでオブジェクトはどこから来るのかで発表しました。彼らは顔が青くなるまでパターンを話し、多くの合意がありましたが、より具体的なパターンがなければ、誰もサインアップしていませんでした。
その間、Erich Gammaは、PhD論文の一部として、ET ++でのオブジェクト指向の設計についての執筆と考察に忙しかった。 Erichは、繰り返し発生する設計構造またはパターンが重要であることに気づきました。問題は、実際にはどのようにそれらをキャプチャして伝達するかでした。
ブルース・アンダーソンは、エーリヒ・ガンマが出席したTOOLS90で講演しました。エリックはその話が好きだった。ブルースはEcoopOopsla90(オタワ)で論文を発表し、 Toward a Architecture Handbook というBOFを実行して、彼、Erich Gamma、RichardHelmなどがパターンについて話し合いました。リチャードとエリックが出会ったのはこれが初めてであり、再利用可能なオブジェクト指向ソフトウェアの作成の背後にある重要なアイデアについて共通のアイデアを共有していることに気づきました。
ECOOPの直前 “91エーリッヒガンマとリチャードヘルムは、蒸し暑い夏の日にチューリッヒの屋上で、最終的にDesignPatternsになるパターンのカタログの非常に謙虚な始まりをまとめました…
ブルースが1991年に開催したOOPSLAワークショップで、物事は本当に動き始めました偶然にも、Erich Gamma、Richard Helm、Ralph Johnson、およびJohnVlissidesがすべてそこにいました。それらは後に、デザインパターンの本を作成した Gang of Four になります…
回答
パターンへのリファクタリングは、特定のデザイン/コードをGoFブックのパターンに向けてリファクタリングする方法を説明しているという理由だけで役立ちます。これは、最初の学習曲線を克服するのに役立つ場合があります。ああ、それは「パターンハピネス」についても考えています:)
パターン指向ソフトウェアアーキテクチャの最初の3巻もお読みになるかもしれません。
回答
デザインパターン
このチュートリアルサイトには、次のサブセクションが含まれています
- 各デザインパターンの意図
- 実際の構造デザインパターン
- 問題の説明
- 問題に関する詳細な議論
- パターンに到達する方法のチェックリスト
- 親指のルールパターンに到達している間。
- C#、C ++、Delphi、Java、PHPを含むデザインパターンのコードスニペット
このサイトには、アンチパターン、UMLに関するガイドも含まれています。およびリファクタリング。
コメント
回答
元の本「デザインパターン:の要素再利用可能なオブジェクト指向ソフトウェア」は、オブジェクト指向のデザインパターンに適したリソースです。
他にもたくさんの本があります。クイックリファレンスが必要で、GoFの本が手が届かない場合、ウィキペディアには通常、それらやその他のデザインパターンに関する十分な情報があります。
これらは私が使用する主なものです。また、プロジェクト管理など、他のことにパターン形式を適用し始めていることにも注意してください。
知っておくべきアンチパターンについて知りたい場合は、2冊の本があります。 「アンチパターン:危機に瀕しているソフトウェア、アーキテクチャ、プロジェクトのリファクタリング」と「リファクタリング:既存のコードの設計の改善」には、アンチパターンの別名であるコードの臭いに関するセクションがあります。
回答
Robert C. Martinによる「C#の俊敏な原則、パターン、および実践」。彼はこの本のJavaバージョンも持っていると思います。
また、パターン自体ではありませんが、完全なDDDアプローチを採用しなくても、ドメインドリブンデザインにはいくつかの優れたコンセプトがあります。
* Ubiquitous Language * Code first approach (vs. DB first) * etc.
回答
C ++のデザインパターンに特に関心がある場合は、最新のC ++デザインを試してください。 AndreiAlexandrescuによる。
この本は、commonlを実装する方法について説明しています。 yは、C ++でFactory、Singleton、Visitorなどのパターンを使用しました。また、スマートポインター、テンプレートメタプログラミング、ポリシーベースのクラス設計など、C ++固有のトピックについても説明します。
本の著者は権威ある専門家です、彼の
テンプレートメタプログラミングを介して実装されたポリシーベースの設計に関する先駆的な研究で知られています。これらのアイデアは、彼の著書 Modern C ++ Design に明確に示され、彼のプログラミングライブラリであるLokiに最初に実装されました。彼はまた、MOJOライブラリに「コンストラクターの移動」の概念を実装しました。彼は、署名欄「Generic < Programming >」の下で C / C ++ユーザージャーナルに寄稿しました…
コメント