問題タブ [dynamic-binding]
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.
wpf - WPF の TabIndex プロパティを動的にバインドする
Wpf で実行時に以下のコードを作成する必要があります。つまり、サイズ、幅、場所などを動的に設定する AutoCompleteBox を作成します。次に、TabIndex を動的に設定します。これを行う方法。
objective-c - 動的バインディング、Objective C、およびメソッドに関する質問
Apple の Objective C ガイドによると、同じ名前のメソッドはすべて同じセレクターを使用し、戻り値の型とパラメーターが同じである必要があります。
次に、例外である「静的型付き」メソッドについて何かがあります。
つまり、セレクターを共有する同じ名前と戻り値の型 + パラメーターを持つメソッドですが、同じ名前であるが戻り値の型やパラメーターが異なる場合は、異なるセレクターを持ちます-そのようなメッセージを送信した場合それに...わかりません。
clojure - clojureで「バインディング」を使用する良い例は何ですか?
binding
フォームが clojure で再バインド可能な動的スコープを許可することを理解しています。これまでのところ、それが使用されているのを見た唯一の用途は、その時点で好きなライターにリバウンドするprint
場所などの I/O です。*out*
binding
他の施設では真に機能しないところのパワーを真に活用する例を見たいと思います。個人的には、ユーザーが提供したオブジェクトをすべての関数に渡すのが本当に面倒な場合にのみ使用しました。基本的に、ヘルパー関数が使用するコンテキストを作成しようとしている状況です。(このケースと同様に、いつ Clojure で一時的に再バインドする特別な変数のイディオムを使用する必要がありますか? ) より具体的に言うと、ユーザーに依存して、*db*
var を使用して、データベース関数が操作対象を認識できるようにします。これは、ユーザーがデータベース関数に対して多数のネストされた呼び出しを記述する必要がある場合に特に役立ちました。通常、自分で作業を簡単にするためにマクロを作成する必要がある場合は問題ありませんが、ユーザーにそうするように要求するのは良くないように思えます。そうは言っても、私はできるだけそうしないようにしています。
コピーしてコードに組み込むことができる「バインディング」の他の良いユースケースは何ですか?
java - Java で動的にバインドされるメソッドはどれですか?
Java で動的にバインドされるメソッドはどれですか?
C++ から来て、私が間違っていなければ、ほとんどのメソッドはいくつかの例外を除いて静的にバインドされています。
c++ - インターフェイス パラダイムのパフォーマンス (動的バインディングとジェネリック プログラミング)
コアとなるダイナミック バインディングとテンプレートは根本的に異なるものですが、同じ機能を実装するために使用できます。
コード例 (参考用)
A) 動的バインディング
B) 汎用プログラミング
質問
いくつかの考え
これらのパラダイムは同一ではなく、長所と短所A
があります ( の方が強力 ( を参照MyCode2
) でありB
、ユーザーにとってより柔軟です) が、両方とも同じ機能を実装できます (上記の制限が適用されます)。
とにかく、理論的には、 (TM)A
は仮想関数の間接化のために実行時に少し遅くなりますが、B
メソッドをインライン化できるため、いくつかの最適化の機会が提供されます (もちろん、間接化はありません)。ただし、実装する必要がある明確なインターフェイス (通常は複数のメソッドで構成されます) があるため、もう少し自己文書化されていると
感じることがよくありますが、もう少し無政府的です (柔軟性を意味します)。A
B
芯
- これらのパラダイムの一般的な結果/比較研究はありますか?
- スピードアップは重要ですか?
- コンパイル時間はどうですか?
- 大規模システムのインターフェースに対する設計上の意味は何ですか (私は主に
A
モジュール間インターフェースに使用しましたが、これまで本当に大きなプロジェクトを行ったことはありません)。
編集
注: 「より強力なので動的バインディングの方が優れている」と言うのは、まったく答えではありません。前提条件は、両方のアプローチが適用できる場合があるためです (そうでない場合、選択する自由はありません。少なくとも合理的ではありません)。 .
java - Javaで、どのサブクラスにも継承されていないメソッドが呼び出された場合、動的バインディングと静的バインディングのどちらが使用されますか?
Javaで、どのサブクラスにも継承されていないメソッドが呼び出された場合、動的バインディングと静的バインディングのどちらが使用されますか?
この特定のケースでは出力に違いがないことはわかっていますが、これを知りたかっただけです。
asp.net-mvc - MVC - Ninjectを使用した複数のデータベースへの動的バインディング?
単一の MYSQL データベースに接続する小さな MVC アプリケーションがあります。アプリケーションの起動時にconnectionStringをバインドするために、Ninjectでセットアップしました。コードは次のようになります。
Global.asax.cs:
NinjectControllerFactory.cs:
今日、要件が変更され、複数のデータベースをサポートする必要が生じました。以前のように、各データベース接続文字列を web.config ファイルで定義したいと思います。ユーザーは、アプリケーションのログイン中に接続するデータベースを選択します。
ログイン後にリポジトリをバインドする最も簡単な方法は何ですか? ログイン コントローラーでデータベース バインドをコーディングする必要があると思います。
私はNinjectの初心者なので、どんな例でも大歓迎です!
いつものように、時間と助けをありがとう! .
objective-c - Objective-c での動的バインディングの理解に行き詰まっている
私は Objective-C の学習を始めたばかりで、 Stephen G. KochanによるProgramming in Objective-C 3rd Editionを読んでいます。
ポリモーフィズムのメカニズムを説明する段落があります。
実行時に、Objective-C ランタイム システムは、dataValue1 (id オブジェクト) 内に格納されているオブジェクトの実際のクラスをチェックし、正しいクラスから適切なメソッドを選択して実行します。ただし、より一般的なケースでは、コンパイラはメソッドに引数を渡したり、その戻り値を処理したりするための間違ったコードを生成します。これは、たとえば、一方のメソッドが引数としてオブジェクトを取り、もう一方のメソッドが浮動小数点値を取った場合に発生します。または、たとえば、一方のメソッドがオブジェクトを返し、もう一方のメソッドが整数を返した場合。2 つのメソッド間の矛盾がオブジェクトの型の違いだけである場合 (たとえば、Fraction の add: メソッドは引数として Fraction オブジェクトを取り、それを返し、Complex の add: メソッドは Complex オブジェクトを取り、返すなど)、コンパイラは次のことを行います。いずれにせよ、メモリ アドレス (つまり、ポインター) はオブジェクトへの参照として渡されるため、正しいコードが生成されます。
段落の最初の部分で、同じ名前で異なる型の引数を持つ異なるクラスで 2 つのメソッドを宣言すると、コンパイラが間違ったコードを生成する可能性があると述べていることはよくわかりません。段落の最後の部分では、同じ名前で引数と戻り値の型が異なる2つのメソッドを使用しても問題ないと述べています...ああ、いや...
次のコードがあり、コンパイルして正常に実行されます。
編集:私が引用したテキストのように、上記のコードはエラーを引き起こすはずですが、いくつかの警告メッセージしか生成しません.「add:」という名前の複数のメソッドが見つかりました. 「id」を「int」型のパラメータに送信する整数変換への互換性のないポインタ
私は Java と C++ のバックグラウンドを持っています。Objective-C のポリモーフィズムがこれらの言語のポリモーフィズムとは少し異なることは知っていますが、不確実性についてはまだ混乱しています (太字のテキスト)。
私は何かを誤解しているに違いないと思います。私とそれを必要とする人のために、Objective-C の動的バインディングについて詳しく説明していただけますか?
ありがとうございます!
c++ - 配列の静的バインディングと動的バインディングの違い
私は今スタックオーバーフローで尋ねているのと同じトピックに関するすべての検索結果を読んだところですが、それは私の好奇心の答えではありません.しかし、ここにあります.
質問
1.)私が知っていることから、静的バインディングはコンパイル時に設定され、実行時にそこにあることを意味しますが、動的バインディングは実行時に設定されることを意味します。
2.)私が読んだ動的配列について紹介した本では、実行時に動的配列のサイズを設定できると記載されています。これはこの方法で行われます。
コード
3.) このコードでは、実行時に動的配列サイズを設定できると書かれています。
コード
4.)上記のコードも機能するので、通常の静的配列でも同じことができるので、動的配列の何が特別なのか知りたいです。
5.)動的配列は実行時にメモリを解放できるのに対し、静的配列はそれが特別な理由ではないためですか??
私の質問を読んでくれてありがとう、私が犯した間違いを指摘してください。
java - スーパーのスーパーからオーバーライドされたメソッドを呼び出すことはできますか?
次の 3 つのクラスがあるとします。
を呼び出すことは可能Foo
ですfn()
か? が type のオブジェクトを指しているため、 のソリューションがgn()
機能しないことはわかっています。this
Bar