アスペクト指向プログラミング(AOP)は、関心の分離という原則を提示し、相互依存性を低減し、透明性を高める。アスペクトとは、横断的な関心をカプセル化するモジュールであり、ポイントカットとアドバイス本体から構成される。アスペクトのインターセプションは、ジョインポイント(実行フロー内のポイント)で行われ、ポイントカット(ジョインポイントの集合)内で定義される。アプリケーション実行がいずれかのポイントカットに到達すると、それに関連付けられたアドバイス(つまりコールバック)が実行される。しかし、この実装は分散環境における関心の分離を考慮していない。[1]
対照的に、分散AOPは分散インターセプションを可能にするパラダイムです。実行がリモートホスト上で行われるため、従来のリモートメソッド呼び出しに類似したリモートポイントカットなど、多くの新しい概念が定義されています。このように、分散AOPは、複数のホストにアスペクトを展開できるコンテキストを確立します。この意味で、リモートポイントカット抽象化[2]は分散AOPの出発点と考えられています。その後、いくつかの研究 [3] [4] [5] [6]がこのアイデアを何らかの形で拡張しましたが、それらはすべてリモートポイントカットの概念を共有しています。
分散アスペクトは、複数のリモートホストで動作し、分散アプリケーション全体の動作を傍受して変更する可能性のある横断的なソフトウェアモジュールとして定義されています[7]。この分散エンティティは、異なるホスト(ジョインポイント)に配置された様々なフック(分散接続(リモートポイントカット)を介してトリガーされる)に追加機能(リモートアドバイス)を適用することで、分散システムを変更または適応させることができます。
参考文献
- ^ AS Tanenbaum、M. van Steen著『分散システム:原理とパラダイム(第2版)』Prentice-Hall, Inc., Upper Saddle River, NJ, USA, 2006年。
- ^ 西澤正之、千葉聡、辰堀正之. リモートポイントカット:分散AOPのための言語構成要素. AOSD '04. ニューヨーク、ニューヨーク州、米国、2004年.
- ^ Pawlak, R., Seinturier, L., Duchien, L., Florin, G., Legond-Aubry, F., Martelli, L. 2004. JAC: アスペクトベースの分散動的フレームワーク. Softw. Pract. Exper. 34, 12 (2004年10月), 1119-1148.
- ^ Benavides Navarro, LD, Südholt, M., Vanderperren, W., De Fraine, B., Suvée, D.: AWEDを用いた明示的分散AOP.第5回国際ACMアスペクト指向ソフトウェア開発会議(AOSD'06)の議事録,2006年3月.ACM Press.
- ^ Eric Tanter と Rodolfo Toledo、「分散 AOP 向けの多用途カーネル」、Lecture Notes in Computer Science 4025、pp. 316-331、2006 年。
- ^ B. Lagaisse と W. Joosen. 「アスペクトコンポーネントの真正かつ透過的な分散構成」。『Lecture Notes in Computer Science』第4290巻、2006年、Proceedings Middleway'06 に掲載。
- ^ R. Mondéjar, P. García-Lopez, C. Pairot, L. Pamies-Juarez. Damon: 大規模シナリオ向けの分散AOPミドルウェア. Information and Software Technology (2011).