問題タブ [composite]

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

.net - インターフェイスが必要になるのはいつですか?

(その価値については.NETのコンテキストで)

私は継承を使用しない傾向があり、インターフェイスはめったに使用しません。唾を吐き出して以来、インターフェイスが最高のものだと考えている人に出会いました。彼はそれらをどこでも使用します。私はこれを理解していないので、それに続く質問です。インターフェイスの理解度を確認したいだけです。

どこでもインターフェイスを使用している場合、将来を予測できると思います。アプリの要件が明確になり、アプリで何も変わることはありません。私にとって、特に開発の初期段階では、インターフェースが邪魔になります。このアプリは、その生涯を通じて非常にダイナミックです。インターフェイスからメンバーを削除または追加する必要がある場合、多くのものが壊れます。上記の人は、新しいメンバーを処理するために別のインターフェースを作成したと言っています。何も壊れません。

構成じゃないの?インターフェイスなしでコンポジションを使用しないのはなぜですか? より柔軟に。

インターフェイスからメンバーを削除する必要がある場合、彼はどのように処理しますか? 基本的に彼はしません。物事が壊れるだけで、影響を受けたすべての領域を確認して修正できるので、それは素晴らしいことです. 関連するすべてのコード パスがどこにあるかをよりエレガントに把握する代わりに、力ずくでクラスの一部を切り取る必要がありますか?

私はソフトウェア アプリケーションをグラフと考えています。完全なグラフは最悪のケースで、n(n-1)/2 になります。これは、すべてのクラスがすべてのクラスと対話することを意味します。ややこしい蜘蛛の巣。n-1 は最高であり、コミュニケーションの厳密なヒエラルキーです。新しい必要なメンバーを補うためだけに別のインターフェイスを追加すると、グラフに頂点が追加されます。これは、より多くのエッジと n(n-1)/2 方程式のより強力な実現を意味します。インターフェイスのないコンポジションは、ミックスインに似ています。一部のクラスのみが特定のメソッドを使用します。インターフェースを使用すると、すべてのクラスはメンバーを必要としない場合でもメンバーを使用することを余儀なくされます。コンポジション/ミックスイン アプローチでは、新しい不要なエッジは追加されません。

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

design-patterns - 複合パターンを使用するときにノードを見つけるためのオプションは何ですか?

各ノードを再帰的にクエリする以外に、識別子を指定してノードを検索するためのオプションはありますか?

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

c++ - リソース ダイアログへの OCX コントロールの追加 (制御方法)

C++ プロジェクトで作成したリソース ダイアログに OCX を追加しています。
ocx は適切に追加します。しかし、私の質問は、プログラムで ocx にアクセスするにはどうすればよいですか?
メンバー変数 (またはクラス) が関連付けられていません。

これは私の.rcコンテンツです

/////////////////////////////////////////////// ////////////////////////// // // ダイアログ情報 //

IDD_LENELDECODER DLGINIT BEGIN IDC_MATRIXCONTROL1, 0x376, 26, 0 0x0000, 0x0000, 0x0900, 0x0000, 0x4c7b, 0x0000, 0x3643, 0x0000, 0x0013, 0x0065, 0x0ff0, 0x0ff0, 0

IDC_MATRIXCONTROL1 は、ocx に関連付けられた ID です。私の質問は、クラスからこの ocx のメンバー変数にアクセスする方法です。ダイアログのサイズが変更されたときにサイズを変更するにはどうすればよいですか?

MFC ActiveX と ATL Project -> ATL Control (composite) の両方を試しました。ATL 複合コントロールには [Go To Dialog] が関連付けられているため、アクセスできると思いますが、その方法がわかりません。

どんな助けでも大歓迎です!ありがとうございました、

ジョーイ

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

mysql - MySQL のスコープ付き/複合代理キー

これは私の現在のデータベースの抜粋です(理解しやすいようにテーブル名を変更しました):

は常にidで作成された代理キーauto_incrementです。

Pet.id代理キーを「スコープ」にするPet.ownerFKか、つまり、複合キー[ownerFk, id]を最小キーとして使用したいと考えています。テーブルを次のように動作させたい:

私は現在MyISAM のこの機能を使用しており、「複数列インデックスのセカンダリ列で指定できますAUTO_INCREMENT。この場合、AUTO_INCREMENT列の生成値は として計算されMAX(auto_increment_column) + 1 WHERE prefix=given-prefixます。これは、データを順序付けられたグループに入れたい場合に役立ちます。 ."

ただし、いくつかの場所でトランザクションが必要なため、さまざまな (そしておそらく明白な) 理由により、MyISAM から InnoDB に切り替えたいと考えています。

InnoDBでこの効果を達成する方法はありますか?

この問題に関するいくつかの投稿を見つけました。それらの多くは、挿入前にテーブルを書き込みロックすることを提案しました。私はこれにあまり慣れていませんが、テーブルの書き込みロックではなく、これを少しオーバーホールするのではないでしょうか? Owner.current_pet_counterヘルパーフィールドとしてa を持つことが可能であれば、書き込み安全なトランザクション (これまで行ったことがない) を持つことをむしろ考えました。

したがって、別の許容される解決策は...

実際には、「スコープ」ID を実際のキーの一部にする必要はありません。私の実際のデータベース設計では、この「機能」を使用する別の「パーマリンク」テーブルを使用しています。現在、不足しているトランザクションの回避策として使用しています。次の代替案を考えました。

私はまだ MySQL でトランザクション/トランザクション変数を扱っていないので、これに重大な問題があるかどうかはわかりません。 注:id一度ペットに与えた sを再利用したくありません。それが私が使用しない理由ですMAX()このソリューションには注意事項がありますか?

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

asp.net-mvc - ASP.NET MVC で MEF を実装していますか?

ASP.NET MVC で MEF (Managed Extensible Framework (Microsoft の新しいプラグイン フレームワーク)) を使用した経験やアイデアがあるかどうかを調べようとしています。私が持っている標準の ASP.NET MVC を作成する必要があります。プラグインを追加するかどうかに応じて、ビューやコントローラーなどの追加機能を提供します. 動的にコンパイルする必要はありません. つまり、ソースコード..

アプリの起動時に DLL を動的にロードし、ビューとコントローラーをメイン システムとマージする方法はありますか? ここで正しい軌道に乗っているかどうかはわかりません。

次に、アプリに付属の「STANDARD」ビューで、「IF THEN」を使用して、プラグインがロードされているかどうかを確認し、ユーザー コントロールで MERGE できると思います。

ええと、私はここで大声で話していますが、あなたは私が何を言いたいのか理解していると思います.

何か案は?

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

nhibernate - Nhibernate 、コレクション、compositeid

以下の表があります。

複合キーは問題ではありません。これを回避する方法はわかっていますが、バケット クラスに BucketUser の IList を含める必要があります。私はオンラインリファレンスを読んで、クラックしたと思っていましたが、まだクラックしていません。2 つのマッピングを以下に示します。

- バケツ -

-- バケットユーザー --

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

eclipse - Eclipse SWT 仮想コンポジットの質問

SWT を使用して仮想コンポジットを作成することは可能ですか?つまり、コンポジットの最大表示領域を超えて水平または垂直にスクロールできますか?

コンポジットのサイズが変更されても、ウィジェット (画像) の長さと高さを一定に保ちたいです。

表示する画像が 50 枚あり、コンポジットを最大化したときに一度に 10 枚しか表示できない場合、右にスクロールして残りの画像を表示できるようにしたいと考えています。

ScrolledComposite に何も表示させることができませんでした。

コンポジットを使用して水平スクロールバーを取り付けるだけで、最初のいくつかの画像を見ることができます。

ありがとう。

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

sql - 複合インデックスはどのように機能しますか?

以前に、テーブルがどのように機能するかを想定して、テーブルに複合インデックス (数学者向けのインデックス) を作成しました私の仮定が正しいかどうかに興味がありました。

インデックスの列の順序をリストするとき、インデックスをグループ化する方法も指定していると思います。たとえば、列ab、およびcがあり、同じ順序a ASCでインデックスを指定するb ASCc ASC、結果のインデックスは基本的に の各「グループ」の多くのインデックスになりますa

これは正しいです?そうでない場合、結果のインデックスは実際にどのようになりますか?