問題タブ [design-patterns]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
8 に答える
2360 参照

html - ナビゲーション ブレッドクラムのインスピレーションの源

ナビゲーションの「ブレッドクラム」のインスピレーションやデザイン パターンのソースを探しています。これまでのところ、Pattern Tap でブレッドクラム コレクションを見つけました。他の情報源を知っている人はいますか?

0 投票する
22 に答える
36625 参照

design-patterns - UndoEngineのデザインパターン

土木工学アプリケーション用の構造モデリングツールを書いています。建物全体を表す1つの巨大なモデルクラスがあります。これには、カスタムクラスでもあるノード、ライン要素、荷重などのコレクションが含まれます。

モデルに変更を加えるたびにディープコピーを保存するUNDOエンジンをすでにコーディングしました。今、私は別の方法でコーディングできたかどうかを考え始めました。ディープコピーを保存する代わりに、対応する逆修飾子を使用して各修飾子アクションのリストを保存することもできます。現在のモデルに逆修飾子を適用して元に戻したり、修飾子を適用してやり直したりできるようにします。

オブジェクトのプロパティなどを変更する単純なコマンドをどのように実行するか想像できますが、複雑なコマンドはどうでしょうか。モデルに新しいノードオブジェクトを挿入し、新しいノードへの参照を保持するいくつかのラインオブジェクトを追加するようなものです。

それをどのように実装するのでしょうか?

0 投票する
16 に答える
5490 参照

.net - finally ブロックのポイントは何ですか?

構文はさておき、違いは何ですか

編集:.NET 2.0で?


それで

行動的に同等ですか?

0 投票する
2 に答える
274 参照

object - 2 つのオブジェクトのオーバーラップのパターン

これはすでに質問されて回答されていると確信しているので、事前にお詫び申し上げますが、検索する正しいキーワードがわかりません. 「パターン」で検索すると、あまりにも多くの Q & A がヒットし、役に立ちません。

私は回帰テストアプリに取り組んでいます。画面にフォームを表示していますが、アプリにログインしているユーザーに応じて、フィールドの一部を読み取り専用にする必要があります。フィールド オブジェクトを抽象化し、ユーザー オブジェクトを抽象化できますが、これら 2 つの概念の交差を説明するには、どのパターンを見ればよいのでしょうか? つまり、フィールド 1 とユーザー A のフィールドが読み取り専用であることをどのように説明すればよいでしょうか。読み取り専用 (またはそうでない) は Field クラスのプロパティであるように見えますが、私が言ったように、どのユーザーがフォームを見ているかによって異なります。単純な 2 次元配列 (例: ReadOnly[Field,User] = True) を検討しましたが、これを表す最も効果的な構造を選択したことを確認したいと思います。

この種のデータ構造に関するソフトウェア設計パターンはありますか? 私は物事を過度に複雑にしていますか? 2 次元配列がここに行くための最良の方法でしょうか? 私が言ったように、これが尋ねられて答えられた場合、私はお詫び申し上げます。私はここで検索しましたが、何も見つかりませんでした.Google検索でも何も見つかりませんでした.

0 投票する
15 に答える
16071 参照

design-patterns - コマンドライン引数を処理するためのデザインパターンは何ですか

コマンドラインから実行可能なプログラムを作成している場合は、多くの場合、複数のオプションまたはフラグと、場合によっては複数の引数をユーザーに提供する必要があります。私はこれを何度も経験しましたが、引数をループして適切なハンドラー関数を呼び出すためのある種のデザインパターンはありますか?

検討:

言語に組み込まれているものを使用して引数を取得した後、ハンドラー関数をどのように編成しますか?(言語固有の回答を歓迎します。それが回答を明確にするのに役立つ場合)

0 投票する
6 に答える
1899 参照

.net - Microsoft のアプリケーション ブロックの使用

私は .NET プログラミングをあまりやったことがありませんが、Microsoft の Patterns and Practices グループによって公開されたアプリケーション ブロックのいくつかを調べました。これらが通常どのように使用されるのか疑問に思っていました:

  • アプリケーションに直接リンク
  • ソースがアプリケーションに追加され、それらでビルドされます。おそらくいくつかのカスタマイズが行われます
  • アプリケーション固有のコードを記述する際に参照として使用されるサンプル コード

これら 3 つの使用方法はすべて一般的だと思いますが、最も一般的な使用パターンは何ですか?

「全員」が使用する特定のアプリケーション ブロックがいくつかありますか?

注: この質問はEnterprise Library Application Blocks OR Home Grown Frameworkに関連していますが、同じではありませんか? .

0 投票する
3 に答える
21303 参照

c# - Activator.CreateInstance(string) および Activator.CreateInstance() 違い

いいえ、これはジェネリックに関する質問ではありません。

内部コンストラクターを持ついくつかのクラスを持つファクトリーパターンがあります(ファクトリーを介していない場合、それらをインスタンス化したくありません)。

私の問題は、CreateInstance非公開パラメーターに「true」を渡さない限り、「このオブジェクトにパラメーターなしのコンストラクターが定義されていません」というエラーで失敗することです。

次のように、ファクトリをジェネリックにしてもう少しシンプルにしたかったのです。

ただし、その「true」パラメーターを渡して非公開コンストラクターを受け入れる方法を見つけることができませんでした (内部)。

私は何かを見逃しましたか、それとも不可能ですか?

0 投票する
10 に答える
35094 参照

c# - C#でキーワードをロックする

MSDNのロックキーワードの主な機能を理解しています

ロックステートメント(C#リファレンス)

lockキーワードは、特定のオブジェクトの相互排他ロックを取得し、ステートメントを実行してからロックを解放することにより、ステートメントブロックをクリティカルセクションとしてマークします。

ロックはいつ使用する必要がありますか?

たとえば、データを保護するため、マルチスレッドアプリケーションでは意味があります。しかし、アプリケーションが他のスレッドをスピンオフしない場合は必要ですか?

ロックの使用にパフォーマンスの問題はありますか?

どこでもロックを使用しているアプリケーションを継承しましたが、それはシングルスレッドであり、それらをそのままにしておくべきかどうか知りたいのですが、それらは必要ですか?

これは一般的な知識の質問であることに注意してください。アプリケーションの速度は良好です。これが将来従うべき優れたデザインパターンであるかどうか、または絶対に必要でない限りこれを避けるべきかどうかを知りたいです。

0 投票する
2 に答える
1600 参照

c++ - C++ クイズ - シングルトン

まもなくブログに記事を投稿する予定ですが、まず何も見逃していないことを確認したいと思います。

私が見逃した例を見つけてください。投稿で引用します。

トピックは失敗したシングルトン実装です: シングルトンの複数のインスタンスを誤って取得する可能性があるのはどのような場合ですか?

これまでのところ、私は思いついた:

  • への最初の呼び出しでの競合状態instance()
  • 複数の DLL または DLL と実行可能ファイルへの組み込み
  • シングルトンのテンプレート定義 - 実際には個別のクラス

私が見逃している他の方法はありますか?おそらく継承を使用していますか?

0 投票する
2 に答える
2092 参照

winforms - 十分な Winforms GUI デザインの推奨事項はありますか?

VB2008 で中規模のアプリケーションを開発しています。アプリケーションをより適切にテストするために、MVP/Supervising Controller アプローチに従っています。

私の質問は次のとおりです。責任を分離するための推奨事項は何ですか? これまでのところ、コントローラーのインスタンスとクラスのインスタンスを含む winform を考え出しました。コントロールは DataBinding を介して更新されます

問題は、責任をどこに書くべきかわからないことです(検証、レポート作成、クエリなどとしましょう)クラス内ですか?別のクラスで?

あなたが私に指摘できるクリーンなWinformクラスの設計の小さな例はありますか?