問題タブ [object-oriented-analysis]

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 投票する
1 に答える
385 参照

c++ - 各階層の個別のシングルトン継承

OO デザインの質問です。

シングルトン機能をクラスのさまざまな階層に継承したいと考えています。つまり、階層ごとに独自のシングルトンのインスタンスが必要です。

これが私がやろうとしていることの簡単な例です:

このコードにより、ジムとボブは BatchNodeSingleton の保護されたメンバーを共有します。それぞれに独自のセットが必要です。良い解決策は何ですか?assetName がキーとして参照できるポインタのコレクション?

あなたの考えを本当に感謝します。

0 投票する
4 に答える
27861 参照

oop - oop の状態と動作を持つオブジェクト

オブジェクトには動作と状態、またはそれらの 1 つがあるという用語をよく耳にします。しかし、違いや意味は何ですか。誰かが例を挙げることができれば、本当に感謝しています.

0 投票する
1 に答える
185 参照

java - これは許容できるオブジェクト指向デザインですか

すべての継承クラスを無限のスレッドにしたい場合、これは優れたオブジェクト指向設計ですか?同様のことを行うためのより良い/よりエレガントな方法はありますか?

0 投票する
1 に答える
881 参照

design-patterns - 制御の反転の正式な定義は何ですか?

重複の可能性:
制御の反転とは?

私は常に制御の反転が漠然とした言葉で説明されているのを耳にしますが、ほとんどの場合、正式な定義よりも例を通して説明されています

一方では、抽象化へのオブジェクトプログラミングと、新しいオブジェクトの明示的なインスタンス化を制御することを放棄するという観点から説明されていると聞きます。それは、オブジェクトグラフと、依存関係が作成され、実行時の条件に注入されたオブジェクトの要求です。

それから、プログラマーが拡張ポイント (イベントやコールバックなど) へのコーディングを優先して制御の流れを放棄する、フレームワークに対するプログラミングの観点から説明されていると聞きます。

両方のケースで正確に反転されているものと、それらが IoC の同等の例であるという共通点は何ですか。一般に受け入れられている定義を見つけるのは驚くほど難しいことがわかりました

0 投票する
1 に答える
985 参照

c# - プロパティを基本クラスにカプセル化する方法は?

私のシナリオは、数学の問題の開発に関するものです。インターフェースとして、IProblem含まれるべき2つの主要なプロパティはQuestionTextResponse. QuestionText常に文字列になりますResponseが、複雑なオブジェクト (カスタム構造体Fraction) または文字列、10 進数、int などの別のデータ型になる場合もあります。

ご覧のとおり、Responseオブジェクトです。すべての問題には本質的に応答があるため、このデータ型を推測しました。また、オブジェクトなので、将来のエラー (キャストの問題) に対してのみ get を定義します。

私のアイデアは後で、具体的なクラスでこのプロパティ ( Response) にアクセスし、キャストする必要はありません。見てみな?

そして、ここで値をテストしています。

今まではうまくいきましたが、私がやっていることは正しいのか、それとも良い習慣なのか知りたいです。別の人newがこれを行うために演算子を使用しているのを見たことがあります。他の人は という言葉を使いませんbase

これは良い方法ですか?将来のエラーを引き起こす可能性はありますか? 私のデザインについてフィードバックをお願いします。

編集: 非汎用インターフェースで Response にアクセスすることが本当に必要です。

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

oop - オブジェクト指向フレームワークはどのように子クラスを呼び出すのですか?

私はよく、特定のクラスから継承し、そこでメソッドをオーバーライドできるフレームワークを使用します。そうすると、それが呼び出されます。

フレームワークの観点から、それはどのように行われるのですか?これはどのようなパターンですか?

0 投票する
4 に答える
14616 参照

oop - シーケンスとコミュニケーション図(UML)の違い

UMLのシーケンス図と通信(コラボレーション)図の違いは何ですか?

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

java - void foo(T y) との違いJava ジェネリック クラスの void foo(T y)

次の 2 つのバージョンの Java ジェネリック クラスの違いがあれば、詳しく説明してください。

もう 1 つの質問: Java コンパイラが C の最初のバージョンを受け入れ、C の 2 番目のバージョンを拒否する「…」を置き換える、foo() の本体に何が書かれている可能性がありますか。

とても困惑しています。

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

java - オブジェクトを検索する最も簡単な方法

ある Sunglasses オブジェクトのリストがあるとします...

  1. 4つの属性、色、形、スタイル、ブランド。
  2. 同一のものはありません。常に異なる4つの属性の組み合わせ

それらを取得する最速の方法は何ですか?

おもう:

  1. Sunglasses クラスの hashcode() メソッドをオーバーライドします (いずれも同一ではないため、一意にする必要があります)。
  2. 次に、各オブジェクトのハッシュコードをキーとして使用し、オブジェクト自体を値として使用して、それらをハッシュマップに入れます

手に入れたいガラスの色、形、スタイル、ブランドを正確に覚えているとします。

  1. 私が実装した hashcode メソッドでそれらを適用します。
  2. 次に、ハッシュマップから取得します。これにより、内容物をO(1)で取得できるようになります。

問題は、色しか知らない場合です。同じ色のすべてのメガネのリストを取得するにはどうすればよいですか?

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

python - 動作のないオブジェクト

アカウント、金額、日付、通貨、タイプなど、かなりの数のプロパティを持つオブジェクト「トランザクション」がある状況を考えています。

これらのデータポイントを変更する予定はありません。計算ロジックは他のクラスに存在します。私の質問は、データを保持するためだけに何千ものオブジェクトをインスタンス化するのは貧弱なPython設計ですか?データをデータ構造の組み合わせに詰め込もうとするよりも、クラスに埋め込まれたデータを使用する方がはるかに簡単だと思います。