問題タブ [cop]
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.
architecture - 複合指向プログラミング(COP)、. NET 4.0、MEF、およびOsloリポジトリ
.NETコミュニティ(ala Qi4j )内のCOPについては、過去1年間にある程度の関心があったようです。数人の人々が独自のCOPフレームワークを導入しており(以下のリンクを参照)、.NET4.0のDynamicDispatchとMEFが.NETCOPフレームワークで潜在的な役割を果たしているように見えます。
一方で、これの多くはSystem / 38日からのアイデアを思い起こさせるように見えます(はい、私は老人です)が、他方では、オスロ(モデリングとリポジトリ)にもかなり適しているようです)。MicrosoftがCOPに取り組んでいるかどうかについて誰かがコメントできますか?
最近の.NETCOPフレームワークの取り組み:
HendryLuk-あなた自身のCOPをロールバックする
YvesGoEleven.com-警官-概念実証
AndersNorås-トリックまたは特性?C#を使用した複合指向プログラミング
MagnusMårtensson- Unityアプリケーションブロックでの複合指向プログラミングの急増
java - Qi4Jを使っている人
以前、複合指向プログラミングに関する InfoQ の記事を読んでいました。
http://www.infoq.com/articles/Composite-Programming-Qi4j
誰かが現在Qi4jフレームワークを使用している (または使用したことがある) かどうかを調べることに興味がありましたか?
クラスを結び付けるために Spring などの従来の依存性注入フレームワークを使用する場合と比較してどうですか。結果のオブジェクト グラフ (クラスではなくミックスインに基づく) は、メンテナンスの観点から扱いやすいですか?
c# - オブジェクトにインターフェースをコードで動的に実装させる
私はこのテストに合格したいのですが、誰かがそれを行う方法を知っていますか?
このようなことは、城の動的プロキシ、linfuなどで実行できると思います...しかし、どのように?
serialization - 構成されたオブジェクトのシリアライズ
コンポジット指向プログラミングと DCI はレスト フレームワーク内で使用する興味深い手法だと思いますが、問題が発生しました。mixin オブジェクトをシリアル化し、そのすべてのプロパティを取得することは可能ですか? 例えば:
上記の 2 つのクラスをミックスインとして CarComposite オブジェクトを作成するとします。この CarComposite クラスをデシリアライズして、次の xml を取得できますか?:
これが一般的にどのように処理されるかに興味がありますが、インターフェイスを逆シリアル化できないため、.NET に細心の注意を払っています。
objective-c - Objective-Cとコンポーネントのプログラミング
iOSゲームを作成しながら、コンポーネントプログラミングの概念を実装しようとしています。
Clemens Szyperskiによる本「ComponentSoftware:Beyond Object-Oriented Programming」の中で、彼は戦術について言及しています。
(引用符ではありません)コンポーネントQuackを追加するDuckクラスから始めます。クラスQuackは、それを呼び出すオブジェクトにインターフェイスを実装します。インターフェイスは、Quacks quack()を使用するメソッドを指定します。
この設定では、Duckは、インスタンス化された場合を除いて、Quackに関する参照や認識がなく、それ以降Duckで使用されることはありません。他のオブジェクトは、duckObject.quack()を呼び出して、Duckオブジェクトのみを認識しながらQuackに到達できます。
これまでのところ、私はこれを実装しようとして成功していません。できれば、Duckはインスタンス化以上のコードを必要とせず、残りはQuackクラスに配置されます。これはObjective-C(iOSの場合)で実行できますか、それとも他の言語にCOPを残したほうがいいですか?
scala - 役割ベースのプログラミング フレームワーク / Scala の複合指向プログラミング フレームワーク
どこからコンポジット指向プログラミングフレームワークをscalaで入手できますか? Qi4jなど?
参考までに:www.qi4j.org
Qi4j™とは? - [www.qi4j.org からの簡単な紹介]
簡単に言えば、Qi4j™ は、AOP、DI、および DDD から進化した概念を含む、ドメイン中心のアプリケーション開発のためのフレームワークです。
Qi4j™ は、標準の Java 5 プラットフォームを使用したコンポジット指向プログラミングの実装であり、プリプロセッサや新しい言語要素を一切使用していません。Java 5 から知っていることはすべて適用され、経験とツールキットの両方を活用して、今日の複合指向プログラミングの生産性を高めることができます。
さらに、Qi4j™ は Java プラットフォーム上で複合指向プログラミングを可能にします。これには、Java と Scala の両方が主要言語として含まれ、JVM 上でブリッジ言語として実行される多数の言語が含まれます。
operating-system - IPC でのこれらの形式のメッセージ パッシングにはどのような利点がありますか?
直接対間接通信と同期対非同期通信?
直接通信では、send (送信先プロセス、メッセージ) や receive (送信元プロセス、メッセージ) など、通信しているプロセスの名前を指定します。リンクには、通信プロセスのペアが 1 つだけあります。各ペアの間には、単方向のリンクが 1 つだけ存在しますが、通常は双方向です。
間接通信には一意の ID があり、プロセスはポートとも呼ばれるメールボックスを共有している場合にのみ通信できます。通信中、プロセスが共通のメールボックスを共有している場合にのみ、リンクが確立されます。リンクは多くのプロセスに関連付けられている場合があり、プロセスの各ペアは、双方向または単方向の通信リンクをいくつか共有している場合があります。
同期はブロッキングと見なされます。ブロッキング受信では、メッセージが利用可能になるまで受信者がブロックされ、ブロッキング送信では、メッセージが受信されるまで送信者がブロックされます。ブロッキング送受信のことをランデブーと呼びます。
非同期はノンブロッキングとも呼ばれます。非同期/ノンブロッキング送信の場合、送信者はメッセージを送信して続行します。ノンブロッキング受信の場合、受信者に有効なメッセージを受信させるか、null になります。
ruby - Ruby リフレクション構成: 再定義されたメソッドから元のメソッドを呼び出す
最初に少しコンテキスト
次のようなPhone
メソッドを定義するクラスがあります。advertise
この方法については、いくつかの適応が必要です。たとえば、ユーザーが静かな環境にいる場合、電話は振動し、鳴らないはずです。そうするために、次のようなモジュールを定義します
それから私のプログラムはできる
もちろん、この例では、クラスとモジュールの名前をハードコーディングしましたが、それらは関数のパラメーターである必要があります。
したがって、実行例は次のようになります。
最後に私の質問に来ます
元の関数を呼び出し、その結果に何かを追加する適応が必要です。のように書きたいと思います。
proceed
しかし、呼び出しが何をすべきか、どこで定義すればよいかさえわかりません。
- WindowsでRuby 2.3.0を使用しています。
proceed
他のものに置き換えることもできますが、適応を定義するモジュールでできるだけきれいに保ちたいと思います。
c - Cでポインタ(行列)値のポインタをコピーする
問題は次のとおりです。ポインターからポインターを使用して、動的マトリックスを作成しましたmatrix1
このマトリックスのコピーを別のマトリックスに作成したいのですが、matrix2
私はそれをやりたいので、matrix2
いじらずにいじることができるのでmatrix1
、次のことを試みました:
ただし、プログラムは中断し、次のように表示されます。
見た目からして、関数を forとcreate_matrix
for の 2 回使用した方が使いやすいことがわかります。しかし、私の元のプログラムのやり方では、マトリックスを完成させるために多くのことを行うので、それはあまりにも多くの作業になるでしょう. ところで、C++ を使わないようにしたいのですが、使わずに行う方法はありますか? それは私にとってより良いでしょう。matrix1
matrix2
コード「create_matrix」は次のとおりです。