{"id":162,"date":"2005-08-09T18:40:38","date_gmt":"2005-08-10T03:40:38","guid":{"rendered":"http:\/\/prg.is.titech.ac.jp\/?page_id=162"},"modified":"2025-08-13T23:10:29","modified_gmt":"2025-08-14T08:10:29","slug":"association-aspects","status":"publish","type":"page","link":"https:\/\/prg.is.titech.ac.jp\/ja\/projects\/modularity\/aspect-oriented-programming-languages\/association-aspects\/","title":{"rendered":"Association Aspects: \u9023\u60f3\u30a2\u30b9\u30da\u30af\u30c8"},"content":{"rendered":"<p>\u9023\u60f3\u30a2\u30b9\u30da\u30af\u30c8(Association Aspects)\u306fAspectJ\u306e\u30a2\u30b9\u30da\u30af\u30c8\u306b\u5bfe\u3059\u308b\u62e1\u5f35\u6a5f\u69cb\u3067\u3059\u3002\u9023\u60f3\u30a2\u30b9\u30da\u30af\u30c8\u306b\u3088\u3063\u3066\u7279\u5b9a\u306e\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306e\u30b0\u30eb\u30fc\u30d7\u306b\u5bfe\u3059\u308b\u6a2a\u65ad\u7684\u95a2\u5fc3\u4e8b\u3092\u8a18\u8ff0\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002AspectJ\u3092\u62e1\u5f35\u3057\u305f\u30b3\u30f3\u30d1\u30a4\u30e9\u5b9f\u88c5\u306b\u3088\u3063\u3066\u3001\u30a2\u30b9\u30da\u30af\u30c8\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u660e\u793a\u7684\u306b\u751f\u6210\u3057\u3001\u8907\u6570\u306e\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306b\u95a2\u9023\u3065\u3051\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002\u66f4\u306b\u3001\u95a2\u9023\u3065\u3051\u3089\u308c\u305f\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u304b\u3089\u691c\u7d22\u3055\u308c\u308b\u30a2\u30b9\u30da\u30af\u30c8\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306e\u3082\u3068\u3067\u3001\u30a2\u30c9\u30d0\u30a4\u30b9\u3092\u5b9f\u884c\u3059\u308b\u3053\u3068\u304c\u53ef\u80fd\u3067\u3059\u3002<\/p>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\" id=\"content_1_1\">Members<\/h2>\r\n\r\n\r\n\r\n<p>\u5897\u539f\u82f1\u5f66\" target=\"_blank\" rel=\"noopener\">Hidehiko Masuhara<\/a><\/li><li>Naoyasu Ubayashi (Kyu<a href=\"https:\/\/prg.is.titech.ac.jp\/ja\/people\/aochi-shu\/\" data-internallinksmanager029f6b8e52c=\"299\" title=\"\" target=\"_blank\" rel=\"noopener\">shu<\/a> Institute of Technology)<\/li><li>Saeko Matuura (Shibaura Institute of Technology)<\/li><li>Seiichi Komiya (Shibaura Institute of Technology)<\/li><\/ul>\r\n\r\n\r\n\r\n<p><\/p>\r\n\r\n\r\n\r\n<ul class=\"list1 wp-block-list\"><li><a href=\"https:\/\/csl.ec.t.kanazawa-u.ac.jp\/~ksakurai\/index.html\" data-internallinksmanager029f6b8e52c=\"288\" title=\"Kouhei Sakurai\" target=\"_blank\" rel=\"noopener\">\u6afb\u4e95<\/a> \u5b5d\u5e73<\/li><li><a href=\"https:\/\/prg.is.titech.ac.jp\/ja\/people\/masuhara\/\" data-internallinksmanager029f6b8e52c=\"285\" title=\"\u5897\u539f\u82f1\u5f66\" target=\"_blank\" rel=\"noopener\">\u5897\u539f<\/a> \u82f1\u5f66<\/li><li>\u9d5c<a href=\"https:\/\/prg.is.titech.ac.jp\/ja\/people\/minami-hayashi\/\" data-internallinksmanager029f6b8e52c=\"334\" title=\"\u6797\u307f\u306a\u307f\" target=\"_blank\" rel=\"noopener\">\u6797<\/a> \u5c1a\u9756 (\u4e5d\u5dde\u5de5\u5927)<\/li><li>\u677e\u6d66 \u4f50\u6c5f\u5b50 (\u829d\u6d66\u5de5\u5927)<\/li><li>\u53e4\u5bae \u8aa0\u4e00 (\u829d\u6d66\u5de5\u5927)<\/li><\/ul>\r\n\r\n\r\n\r\n<p><\/p>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\" id=\"content_1_2\">Publications<\/h2>\r\n\r\n\r\n\r\n<ul class=\"list1 wp-block-list\"><li>[<a name=\"sakurai2004aosd\"><\/a>SMU<sup>+<\/sup>04b]<a class=\"author\" href=\"https:\/\/csl.ec.t.kanazawa-u.ac.jp\/~ksakurai\/\">Kouhei Sakurai<\/a>, <a class=\"author\" href=\"https:\/\/prg.is.titech.ac.jp\/people\/masuhara\/\">Hidehiko Masuhara<\/a>, <a class=\"author\" href=\"https:\/\/posl.ait.kyushu-u.ac.jp\/~ubayashi\/\">Naoyasu Ubayashi<\/a>, Saeko Matsuura, and Seiichi Komiya. Association aspects. In Karl Lieberherr, editor, <em>Proceedings of the 3rd International Conference on Aspect-Oriented Software Development (AOSD&#8217;04)<\/em>, pp. 16\u201325, Lancaster, UK. ACM Press, March 2004. [&nbsp;<a href=\"https:\/\/prg.is.titech.ac.jp\/members\/masuhara\/papers\/masuhara_bib.html#sakurai2004aosd\">bib<\/a>&nbsp;| <a href=\"http:\/\/dx.doi.org\/10.1145\/976270.976275\">DOI<\/a>&nbsp;| <a href=\"https:\/\/prg.is.titech.ac.jp\/members\/masuhara\/papers\/aosd2004.pdf\">.pdf<\/a>&nbsp;]<\/li><li>[<a name=\"sakurai2006taosd\"><\/a>SMU<sup>+<\/sup>06]<a class=\"author\" href=\"https:\/\/csl.ec.t.kanazawa-u.ac.jp\/~ksakurai\/\">Kouhei Sakurai<\/a>, <a class=\"author\" href=\"https:\/\/prg.is.titech.ac.jp\/people\/masuhara\/\">Hidehiko Masuhara<\/a>, <a class=\"author\" href=\"https:\/\/posl.ait.kyushu-u.ac.jp\/~ubayashi\/\">Naoyasu Ubayashi<\/a>, Saeko Matsuura, and Seiichi Komiya. Design and implementation of an aspect instantiation mechanism. <em>LNCS Transactions on Aspect-Oriented Software Development<\/em>, Vol. 3880\/2006, pp. 259\u2013292, 2006. Extended from [<a href=\"https:\/\/prg.is.titech.ac.jp\/members\/masuhara\/papers\/#sakurai2004aosd\">SMU<sup>+<\/sup>04b<\/a>]. [&nbsp;<a href=\"https:\/\/prg.is.titech.ac.jp\/members\/masuhara\/papers\/masuhara_bib.html#sakurai2006taosd\">bib<\/a>&nbsp;| <a href=\"http:\/\/dx.doi.org\/10.1007\/11687061_8\">DOI<\/a>&nbsp;| <a href=\"https:\/\/prg.is.titech.ac.jp\/members\/masuhara\/papers\/taosd2006.pdf\">.pdf<\/a> ]<\/li><\/ul>\r\n\r\n\r\n\r\n<p><\/p>\r\n\r\n\r\n\r\n<ul class=\"list1 wp-block-list\"><li>[<a>SMMK05<\/a>] <a href=\"https:\/\/csl.ec.t.kanazawa-u.ac.jp\/~ksakurai\/\">\u6afb\u4e95\u5b5d\u5e73<\/a>, <a href=\"https:\/\/prg.is.titech.ac.jp\/people\/masuhara\/\">\u5897\u539f\u82f1\u5f66<\/a>, \u677e\u6d66\u4f50\u6c5f\u5b50, <a href=\"https:\/\/researchmap.jp\/read0116520\">\u53e4\u5bae\u8aa0\u4e00<\/a>. \u9023\u60f3\u30a2\u30b9\u30da\u30af\u30c8\u306b\u3088\u308b\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u9023\u643a\u306e\u8a18\u8ff0\u6539\u5584\u8a55\u4fa1. \u30b3\u30f3\u30d4\u30e5\u30fc\u30bf\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2, Vol.&nbsp;22, No.&nbsp;3, pp. 222\u2013228, August 2005. [<a href=\"https:\/\/prg.is.titech.ac.jp\/members\/masuhara\/papers\/index-j.html#sakurai2004jssst\">SMMK04<\/a>]\u3068\u3057\u3066\u767a\u8868. [&nbsp;<a href=\"https:\/\/prg.is.titech.ac.jp\/members\/masuhara\/papers\/masuhara_bib.html#sakurai2005compsoft\">bib<\/a>&nbsp;| <a href=\"http:\/\/dx.doi.org\/10.11309\/jssst.22.3_222\">DOI<\/a>&nbsp;| <a href=\"https:\/\/prg.is.titech.ac.jp\/members\/masuhara\/papers\/compsoft2005.pdf\">.pdf<\/a>&nbsp;] <\/li><\/ul>\r\n\r\n\r\n\r\n<p><\/p>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\" id=\"content_1_3\">Downloads<\/h2>\r\n\r\n\r\n\r\n<h3 class=\"wp-block-heading\" id=\"content_1_4\">Compiler<\/h3>\r\n\r\n\r\n\r\n<p>AspectJ1.2 based (2005.1.29: updated)<\/p>\r\n\r\n\r\n\r\n<ul class=\"wp-block-list\"><li>aspectj-aa.jar (currently unavailable)<\/li><\/ul>\r\n\r\n\r\n\r\n<h3 class=\"wp-block-heading\" id=\"content_1_5\">Source code<\/h3>\r\n\r\n\r\n\r\n<ul class=\"wp-block-list\"><li>aa-compiler-src.zip (currently unavailable)<\/li><\/ul>\r\n\r\n\r\n\r\n<p>\u30bd\u30fc\u30b9\u30b3\u30fc\u30c9\u306fAspectJ\u306e\u30b3\u30fc\u30c9\u306e\u30d0\u30fc\u30b8\u30e7\u30f3V1_2_0\u306b\u5bfe\u3059\u308b\u30d1\u30c3\u30c1\u3068\u3057\u3066\u63d0\u4f9b\u3057\u3066\u3044\u307e\u3059\u3002<br>zip\u30d5\u30a1\u30a4\u30eb\u4e2d\u306eweaver.patch\u3068ajdt.patch\u30d5\u30a1\u30a4\u30eb\u304c\u305d\u308c\u305e\u308c\u3001AspectJ\u306e<strong>weaver<\/strong>\u3068<strong>ajdt<\/strong>\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306b\u9069\u7528\u53ef\u80fd\u3067\u3059\u3002<\/p>\r\n\r\n\r\n\r\n<h3 class=\"wp-block-heading\" id=\"content_1_6\">IDE example<\/h3>\r\n\r\n\r\n\r\n<p>ide.zip (currently unavailable)<\/p>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\" id=\"content_1_7\">Installation<\/h2>\r\n\r\n\r\n\r\n<p>\u307e\u305a\u3001aspectj-aa.jar\u3092\u4e0a\u306e\u30ea\u30f3\u30af\u304b\u3089\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3066\u3001\u6b21\u306e\u3088\u3046\u306b\u5b9f\u884c\u3057\u307e\u3059\u3002<\/p>\r\n\r\n\r\n\r\n<pre class=\"wp-block-preformatted\">java -jar aspectj-aa.jar<\/pre>\r\n\r\n\r\n\r\n<p>\u3053\u308c\u306b\u3088\u308a\u3001\u30aa\u30ea\u30b8\u30ca\u30eb\u306eAspectJ\u30a4\u30f3\u30b9\u30c8\u30fc\u30e9\u3068\u540c\u69d8\u306b\u30b3\u30f3\u30d1\u30a4\u30e9\u3068\u30e9\u30f3\u30bf\u30a4\u30e0\u30e9\u30a4\u30d6\u30e9\u30ea\u304c\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3055\u308c\u307e\u3059\u3002<br>\u30aa\u30ea\u30b8\u30ca\u30eb\u306eAspectJ\u3092\u6301\u3063\u3066\u3044\u308b\u5834\u5408\u306f\u3001\u305d\u306e\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3092\u4e0a\u66f8\u304d\u3057\u306a\u3044\u3088\u3046\u306b\u6ce8\u610f\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\r\n\r\n\r\n\r\n<ul class=\"list1 wp-block-list\"><li><a href=\"http:\/\/www.eclipse.org\/aspectj\" rel=\"nofollow\">AspectJ<\/a><\/li><li><a href=\"http:\/\/dev.eclipse.org\/viewcvs\/indextech.cgi\/~checkout~\/aspectj-home\/doc\/faq.html#quickstart\" rel=\"nofollow\">AspectJ FAQ Quick Start<\/a><\/li><\/ul>\r\n\r\n\r\n\r\n<p>\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u306e\u3042\u3068\u306f\u3001\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3055\u308c\u305f\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306b\u3042\u308bajc\u30b3\u30de\u30f3\u30c9\u3067\u3001\u9023\u60f3\u30a2\u30b9\u30da\u30af\u30c8\u3092\u30b3\u30f3\u30d1\u30a4\u30eb\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<br>\u3053\u306e\u30b3\u30f3\u30d1\u30a4\u30e9\u306f\u30aa\u30ea\u30b8\u30ca\u30eb\u306eajc 1.2\u30b3\u30f3\u30d1\u30a4\u30e9\u3068\u540c\u69d8\u306e\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u3068\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\r\n\r\n\r\n\r\n<p>\u30b3\u30f3\u30d1\u30a4\u30eb\u3055\u308c\u305f\u30b3\u30fc\u30c9\u306f<strong>aspectjrt.jar<\/strong>\u3092\u5229\u7528\u3057\u3066\u5b9f\u884c\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002\u9023\u60f3\u30a2\u30b9\u30da\u30af\u30c8\u306e\u5b9f\u88c5\u306f\u3053\u306e\u30e9\u30f3\u30bf\u30a4\u30e0\u30e9\u30a4\u30d6\u30e9\u30ea\u306b\u306f\u624b\u3092\u5165\u308c\u3066\u3044\u306a\u3044\u305f\u3081\u3001\u30aa\u30ea\u30b8\u30ca\u30eb\u306eAspectJ1.2\u306e\u3082\u306e\u304c\u305d\u306e\u307e\u307e\u5229\u7528\u53ef\u80fd\u3067\u3059\u3002<\/p>\r\n\r\n\r\n\r\n<p><\/p>","protected":false},"excerpt":{"rendered":"<p>\u9023\u60f3\u30a2\u30b9\u30da\u30af\u30c8(Association Aspects)\u306fAspectJ\u306e\u30a2\u30b9\u30da\u30af\u30c8\u306b\u5bfe\u3059\u308b\u62e1\u5f35\u6a5f\u69cb\u3067\u3059\u3002\u9023\u60f3\u30a2\u30b9\u30da\u30af\u30c8\u306b\u3088\u3063\u3066\u7279\u5b9a\u306e\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306e\u30b0\u30eb\u30fc\u30d7\u306b\u5bfe\u3059\u308b\u6a2a\u65ad\u7684\u95a2\u5fc3\u4e8b\u3092\u8a18\u8ff0\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002AspectJ\u3092\u62e1&hellip; <a class=\"continue\" href=\"https:\/\/prg.is.titech.ac.jp\/ja\/projects\/modularity\/aspect-oriented-programming-languages\/association-aspects\/\">Continue Reading Association Aspects: \u9023\u60f3\u30a2\u30b9\u30da\u30af\u30c8<\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"parent":2577,"menu_order":700,"comment_status":"closed","ping_status":"closed","template":"","meta":{"nf_dc_page":"","footnotes":""},"class_list":["post-162","page","type-page","status-publish","hentry","radius"],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/prg.is.titech.ac.jp\/ja\/wp-json\/wp\/v2\/pages\/162","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prg.is.titech.ac.jp\/ja\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/prg.is.titech.ac.jp\/ja\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/prg.is.titech.ac.jp\/ja\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/prg.is.titech.ac.jp\/ja\/wp-json\/wp\/v2\/comments?post=162"}],"version-history":[{"count":8,"href":"https:\/\/prg.is.titech.ac.jp\/ja\/wp-json\/wp\/v2\/pages\/162\/revisions"}],"predecessor-version":[{"id":3561,"href":"https:\/\/prg.is.titech.ac.jp\/ja\/wp-json\/wp\/v2\/pages\/162\/revisions\/3561"}],"up":[{"embeddable":true,"href":"https:\/\/prg.is.titech.ac.jp\/ja\/wp-json\/wp\/v2\/pages\/2577"}],"wp:attachment":[{"href":"https:\/\/prg.is.titech.ac.jp\/ja\/wp-json\/wp\/v2\/media?parent=162"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}