トップページ⇒tech
643コメント210KB

OOPの次はAOPだそうですね?

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさんNGNG
今度はAOP(アスペクト オリエンテッド プログラミング)だそうです。
OOPも、満足にやってないうちに、その次が出てきてしまいました。
われわれはどこへ向かっているのでしょうか?
0002デフォルトの名無しさんNGNG
www.aosd.net見てね
0003デフォルトの名無しさんNGNG
てゆうかお前らブビ坊が進んでないだけ>1

みんな、関数ライブラリじゃなくクラスライブラリ使ってるぞ。
0004デフォルトの名無しさんNGNG
>>3
ぷ。
クラスライブラリ使って、オブジェクト指向のつもりだって。
0005デフォルトの名無しさんNGNG
google検索。アスペクト オリエンテッドで出てきたのは「OOエンジニアの輪」の
眼鏡のおばちゃん。javaよりCが好きだと。
0006デフォルトの名無しさんNGNG
おばちゃんからの引用

”Java よりは C 言語のほうが好きですね。変形していくところとか、
アスペクトオリエンテッドなところとか。C 言語のほうがいいですね。
それに、Java は遅くていやです(笑)。でも、Java と UML がなかった
ら、日本のオブジェクト指向は影も形もなくなっていたかも知れませんよね。”

ふ〜ん
0007デフォルトの名無しさんNGNG
>>4
OO信者の平均レベルはその程度じゃんか 藁
0008デフォルトの名無しさんNGNG
新しいパラダイムを無視しつづければそのうち構造化に戻って
くるかも。歴史は繰り返すっていうし。
0009デフォルトの名無しさんNGNG
日経が取り上げてないから>>1はネタ。
0010デフォルトの名無しさんNGNG
次はOOP++が出てきます。
0011デフォルトの名無しさんNGNG
>>9
藁。CACMに出てたんだけど。
0012デフォルトの名無しさんNGNG
>>11
投資情報に流さないと動かないよ−ん。
0013デフォルトの名無しさんNGNG
>>10
するとC++++が出てくるな。
0014デフォルトの名無しさんNGNG
C+4
数字はトレンドバージョン
0015デフォルトの名無しさんNGNG
マ板の連中が多いようだな…
0016デフォルトの名無しさんNGNG
>>15
普通かけもちじゃないか?
0017デフォルトの名無しさんNGNG
次ぎはHOPです
0018デフォルトの名無しさんNGNG
>>17
ハゲオリエンテッド?
0019デフォルトの名無しさんNGNG
その次はHSPです
0020デフォルトの名無しさんNGNG
AOPも理解できないCOBOLERは逝って良し!
0021デフォルトの名無しさんNGNG
>3000部出たら「売れた」、1万部いったら「ベストセラー」ですよね。
>“OMT”と“GoF”が2万部で、酒匂さんの訳されたMeyerさんの「 オブジ
>ェクト指向入門 」(アスキー出版)が1万部だそうですよ、正確には知り
>ませんがそういう噂です。

専門書ってこんなに厳しいのか・・・。
00221NGNG
ていうか、追いかけるのもう面倒くさいんだけど。それに日本の学者
は、新しいパラダイムとか考えてないの?輸入には熱心だけど。
00231NGNG
>>21
3000部でいくら入るの?印税って1割?だと、300x3000で30マソか。
2割でも60マソだから、どっちみち少ないね。
0024デフォルトの名無しさんNGNG
>>22
日本産は国内で無視されるかアメリカに因縁つけられて終わりだ
0025デフォルトの名無しさんNGNG
>>24
ルビ房発見!
0026デフォルトの名無しさんNGNG
意外にもTRONマニアかもよ?
0027デフォルトの名無しさんNGNG
それよりなによりやっぱAOEだよ
0028デフォルトの名無しさんNGNG
>>27
ネットゲー板 逝け
00291NGNG
日本語のサイト発見。アスペクト指向ね。

http://dolphin.c.u-tokyo.ac.jp/~kazu0/aspectj-primer/primer-fornewcomers/node1.html
0030デフォルトの名無しさんNGNG
解説してちょ>1
0031デフォルトの名無しさんNGNG
>>29
誰か、そのページを200字以内に要約して発表してくれ。
0032デフォルトの名無しさんNGNG
こっちのほうがよさげ?(←まだ読んでない)

http://www.race.u-tokyo.ac.jp/~yoshimi/AOP/index-j.html
0033デフォルトの名無しさん NGNG
〜〜 激しくアスペクト!!(゚Д゚) 〜〜
0034デフォルトの名無しさんNGNG
SubjectOrientedってのも(何種か)あるみたい。
00351NGNG
>>30
私の現状の理解だけど。OOPの短所は、クラスを横断するような
グローバルな動作や処理を局所化し、適切にドメイン単位の処理を
分離することが難しい。例えば、点や線、矩形などのグラフィクス
オブジェクトを考えてみると、これらをある特定の画像表示ハードウェア
で表示するための処理は、個々のクラスにそれぞれ埋め込むような
書き方に(OOの必然?)なってしまうか、または情報の隠蔽を無視する
ような汚い方法になってしまう(ようである)。
AOPは、このような短所を克服するための、複数のクラスを横断するような
処理を局所化する機能をOOPに追加するものである。

簡単に言えば、いわゆる業界人のよく使う言葉だが、クラス構造を
複数クラス横断的な”切り口”で見て、その切り口に対する処理を明示的に一個所
に書けるということだと思う。

で、どうかな。
0036デフォルトの名無しさんNGNG
>これらをある特定の画像表示ハードウェアで表示するための処理
アーキテクチャパターンのレイヤーパターンで終りでは。
0037デフォルトの名無しさんNGNG
AOPなんて、最下層で力仕事やってるPGに降りてくるのに、
確実に10年以上かかります。
君らは、そのときに覚えればいいよ。
00381NGNG
>>36
私はAOPの布教者ではありません。

基本的にはどのパラダイムを使っても、ある特定の仕様を満たすシステムは
作れますよね。AOPでは、特にソースコードの保守性や視認性、わかりやすさ
の向上をめざしているようです。
0039デフォルトの名無しさんNGNG
本体のコードに触らずにコンパイル時に取り付け取り外し
可能っていうのはイイ。Radみたいな環境を想定して、
機械的に生成されたコードを全く見なくても済むならイイんだが。
0040デフォルトの名無しさんNGNG
>>35
ほうほう。
だが、簡単に言われたところが、さっぱり分からん(ウトゥ
0041デフォルトの名無しさんNGNG
Decoratorパターンをうまく実装できるって感じ?
00421NGNG
29のURLにあるHello Worldのサンプルプログラム見るとちょこっと感じはつかめる
かと。

>>40
もっと簡単に言うならトリガー指定のグローバル関数が書けるってことだと。

>>41
Decoratorパターンて、デザインパターン関係ですか?勉強してないのでわかり
ません。
0043デフォルトの名無しさんNGNG
すまん、マジで聞きたいんだが、
例のHelloWorldのサンプルで、
HelloWorldを継承したクラスでprintouts()をオーバーライドして
その中からHelloWorldのprintouts()を呼び出した場合、
before(): printouts()やafter(): printouts()は、
いつ呼ばれるんだ?
継承したクラスのprintouts()呼び出しの前後にも呼び出されるのか?
それともその中から呼び出されたHelloWorldのprintouts()
の前後にだけ呼び出されるのか?
0044デフォルトの名無しさんNGNG
rubyもやってるみたいだな。
0045デフォルトの名無しさんNGNG
しっかし、日本の研究者は紹介ばっかりやってないで、
自分でなんかやれっつーの。
ただの翻訳機械かよ
0046デフォルトの名無しさんNGNG
で、自分でやると叩くっと。メモメモ。
0047デフォルトの名無しさんNGNG
海外の連中も自分でなんかやる時には、
かなり攻撃とかされてるぞ。
C++なんかもその一つだ。
0048デフォルトの名無しさんNGNG
C++ はアレだからなぁ…
00491NGNG
>>43
Aspectjを使ったことがないので推測しかできないですが、
スーパークラスのprintouts()の呼び出し前後が正解だと思います。
正確なジョインポイントでの起動が前提になっていると思いますね。
開発中にデバッグ用のトレースを入れて、リリース時にトレースを
はずすようなことが簡単にできそうです。aspectj開発者も、そういう
ところから導入してほしいと言っているようです。

>>45
おっしゃる通り。いわゆる禿同です。
005043NGNG
>>49
どちらにせよ初期化処理と終了処理のような事には使えないというわけか。
トレースへの利用は確かにできそうだが他に使い道が思いつかん・・・。
0051デフォルトの名無しさんNGNG
2ちゃんで言語をつくろう!スレッド指向言語”--2”
0052デフォルトの名無しさんNGNG
>>1
>OOPも、満足にやってないうちに、その次が出てきてしまいました。

さしあたり、OOPの拡張と認識しておいて良いと思います。
そもそもOOPを駆逐するような性質のものでは全くないので、
やはり過渡期においては「いいとこ取り」が健全かと思われ。

通常のOOPLでは難しいリファクタリングの延長として
捉えてみるのも良いと思います。
とりあえず、メソッドの本質と関係の薄いコードを
コピペする様な状況を回避するには便利です。

あと、デザパタの実装としてAOPを採用するのは、個人的には
時期尚早と思います。(非常に小規模のチームであれば別ですが。)
AOPの利点としてDPが挙げられていますが、
当分は別々に考えて良いと思います。

# お節介ですが、AOPよりデザパタの方が業界的にも重要かと思われ、
# そちらを優先されてはいかがかと。。。
0053デフォルトの名無しさんNGNG
>>39
>機械的に生成されたコードを全く見なくても済むならイイんだが。

AspectJとJUnit併用している者ですが、
JUnitのメッセージはajc生成コードの方を参照しているので
ちょっと面倒になります。
0054デフォルトの名無しさんNGNG
>>43=>>50
細かいようですが、printouts()はpointcutなので、
「呼び出す」と言った類のものではありません。
1さんの言葉を借りると「トリガー指定」って感じです。(>>42参照)

おそらくprintouts()ではなくてprintMessage()と仰りたかったと思います。
そうだとしてお答しますが、オーバーライドしたprintMessage()においても、
before、afterの実行は一度ずつです。

# 念のため言っておくと、before、afterも勝手に実行されます。
# プログラマが「呼び出す」必要はありません
# HelloWorld派生クラスの各printMessage()実装に対して、
# ajcが自動的にbeforeとafterを実行するコードを付加してくれます。

>どちらにせよ初期化処理と終了処理のような事には使えないというわけか。

具体的にどのような処理なのかにもよりますが、
初期化/終了にも使えるのでは?

#ただし、AspectJの場合C++のデストラクタのような
#タイミングは無理ですけど。あたりまえですね。
00551NGNG
>>53
JUnit使ってますか。結構使えるって聞いてるけど、実感としてどうですか?
00561NGNG
>>52
デザパタですか。う〜ん、一人で隅でごりごり書いているような人間
にはどうなんですか?ま、とにかく私のの要求はシンプルで、ただ
1つ「楽したい」だけですね。だからつけはずしの出来るトレース
機能なんてすごく魅力あるんですね。
00571NGNG
失礼しました。sageで進行中なのを失念してました。
0058デフォルトの名無しさんNGNG
デザパタは楽で楽しいYO!>>56

クラスやメソッドを書くのは塗り絵の枠を書くみたいで精神的に楽。
インターフェースの変更も、中身の修正も閉じてるから楽。
0059デフォルトの名無しさんNGNG
このスレの最初で、クラスライブラリ使ってるってそれでOOのつもりかってのが
あったけれど、それでも最初の一歩としてはいいんじゃないですかね。

システム標準の、例えばStringクラスとかを使いこなしていけば、汎用性のある
良いクラスとは何を対象にどのように作れば良いか判ってくると思うのだ。

C++の初心者が陥りがちな、関数を取り合えずメソッドにしてみました、
みたいなプログラムよりOOコンポーネントを使いこなした
構造化プログラミングレベルのコーディングの方が優れてると思うのだが。
0060デフォルトの名無しさんNGNG
>クラスライブラリ使ってるってそれでOOのつもりかってのが

これ書いたのは学生だから放置で良いYO!
自分がその次(この場合オブジェクトベースOOP)を知ってることを誇示したいだけ。
0061デフォルトの名無しさんNGNG
>>59
>>4はただの煽り。メール欄をみてみそ。
0062デフォルトの名無しさんNGNG
アスペクトって何?
0063デフォルトの名無しさんNGNG
as・pect
n. 一側面, 様相; 光景; 顔つき;
【文法】 (動詞の)相; 方向, 向き;
【占星】 星位.
0064デフォルトの名無しさんNGNG
側面指向

うーん。あんまカコヨクナイ
0065デフォルトの名無しさんNGNG
何か流行りそうにないな。
OOPを補完するだけみたいな感じだし。
0066デフォルトの名無しさんNGNG
オブジェクトはカコイイけど、アスペクトてアスベストみたいだもんNE!
http://www.ag.wakwak.com/~hepafil/
0067デフォルトの名無しさんNGNG
日本人って舶来モンに弱いよな、21世紀なのに未だに。

オブジェクト指向なんか、流行り始めた頃は
よく分かってもいないくせにマンセーな奴ばかりで、
ちょっとでも疑問を差し挟めば叩かれまくった。

ちゃんと実体が理解され始めてから今度は
継承に疑問を差し挟んだら叩かれまくった。
今じゃ継承ってあんまり使わん方がいいって感じだもんね。
006843NGNG
>>54
before()でファイルを開いてafter()で閉じるなんてことはできないな。
00691NGNG
>>58
そうなんですかぁ。ちらっとデザパタのスレ読みましたけど、なんか勉強量が多そう
ですね。E.Gammaって名前よく出てきますね。昔ACMのOOPSLAに一度行った時に講演
聞きました(ET++に関して)。スェーデンだかスイスだかフィンランドだかの寒い
とこの人ですね。ま、冷やかしで一回行ったきりなんですが、90年ごろか。長髪で
いい意味でのハッカーぽいかっこいい人でしたね。ヨーロッパ人はOOが好きですね。
007053NGNG
>>55
>JUnit使ってますか。結構使えるって聞いてるけど、実感としてどうですか?

1年前にRMIと組み合わせてServlet用のユニット作って以来、愛用してます。
すごく良くできてます。っていうか、さすが美しいです。

ただし、大人数のプロジェクトに導入するのは慎重にした方が良いかも。
VB厨かき集めて頭数合わせたようなプロジェクトだったらお勧めしません。
最低限のOOPスキル持ってない人には、やっぱテストコード書くのも無理。
(もちろんレベル高いVB使いなら話は別ですが。)

あと人海戦術しか知らんCOBOLERくずれが実権握ってるプロジェクトでも
用心されたし。
「全てのメソッドに条件網羅でテストコード書け!」とか
言い出しかねないんで、ヤブ蛇が懸念されます。

まあ、お一人で組んでらっしゃるそうなので、杞憂ですね。
(うらやましい…)
ってことでお勧めです。
「楽」できますよ。
007152NGNG
>>56
>>58さんが良い事言いました。
「楽」で、尚且つ「楽しい」です。(と私も思いました。)
GoFの本、読まれましたか?
ある程度OOPLでの開発経験があれば面白いですよ。
寝転んでヒマ潰しに読むくらいのスタンスでもそれなりに有益だと思います。
入り口の段階では、とりあえずOOA/OODの知識はそれほど必要ないです。
後になってリファクタリングなんかとの関連もだんだん分ってきます。
学習初期に陥りやすいのは、フレームワークとの混同などでしょうか。
スレ違いですね。この辺にしときます。

>>52で書いたことと逆になっちゃいますが、
お一人で組んでるのであれば、AOPLでデザパタを実装するのも
アリかと思います。
もちろん、ある程度融通の効く開発でなければ危険ですが。

まあ、備えあれば憂いなしってことでAO、DP共にお勧めします。
007254NGNG
>>68
こんな寛治?
---------------- HelloWorld.java ----------------
package ajtest.helloworld2;
import java.io.*;

class HelloWorld {
 PrintWriter pw;
 void printMessage() {
  pw.println("Hello world!");
 }
 public static void main(String[] args) {
  new HelloWorld().printMessage();
 }
}

---------------- Trace.java ----------------
package ajtest.helloworld2;
import java.io.*;

aspect Trace {
 pointcut printouts(HelloWorld hw):
  instanceof(hw) && receptions(void printMessage());

 before(HelloWorld hw): printouts(hw) {
  try {
   hw.pw = new PrintWriter(new FileWriter("temp.txt"));
  } catch (IOException ioExcp) {}
 }
 after(HelloWorld hw): printouts(hw) {
  hw.pw.flush();
  hw.pw.close();
 }
}

--------------------------------------------
血がってます?(だったらスマソ。)
007368NGNG
>>72
そうそう、それで(Javaはあんまり詳しくないんだが)

class GoodbyWorld extends HelloWorod {
void printMessage() {
super.printMessage();
pw.println("Goodby world!"); //←こういうのには使えないって事?
 }
}
007472NGNG
>>73
使えるっす。
この場合、"Hello…"の前後と"Goodby…"の前後で2回ずつ開閉します。
(無駄な気もしますが…)
さっき確認したので信用してね。
0075デフォルトの名無しさんNGNG
>日本人って舶来モンに弱いよな、21世紀なのに未だに。
コンピュータに関しては英語圏が中心だからしょうがないよ。
日本語で論文書いても日本人しか cite しない。
cite してもらうには IEEE や ISO/IEC などに英語で書かないとだめ。
理論を盛り上げるには多くの研究者を巻き込まないといけないので、
もっとも研究が盛んなアメリカでやらないと見向きもされない。
少なくとも向こうに共同研究者がいないと話にならない。

W3C に慶応大学の名があっても日本語のページはないし、
日本語の Technical Report 提出されないしねえ。
(「日本語」を「英語以外」に置き換えても可だね)
007673NGNG
>>74
73の例の GoodbyWorld.printMessage() を呼び出した時

before(GoodbyWorld hw): printouts(hw) -> 開く
before(HelloWorld hw): printouts(hw) -> また開く?
HelloWorld.printMessage()
after(HelloWorld hw): printouts(hw) -> 閉じる
GoodbyWorld.printMessage() // これは可能?
after(GoodbyWorld hw): printouts(hw) -> また閉じる?

こうなるって事か?
カウンターを使って開いた回数を数えていれば問題なさそうだが、
すべての場合で使えるとは限らないような気がするなぁ・・・
0077デフォルトの名無しさんNGNG
>>29や>>32は、まだ読んでないけど
AOPはデザパタで言うところのVisitorパターン?
0078デフォルトの名無しさんNGNG
メッソド実行や参照ごとにイベントが発生してるのと同じようなイメージ?
007974NGNG
>>76
トホホ。。。
テストしたときのmain()がご質問の趣旨と血がってた。
↓正しくはこう。

before     ←ファイル開く
Hello world!  ←基底クラスのメソッド
Good-by world! ←派生で追加した分
after      ←ファイル閉じる

'super.printMessage();'
の前後のbefore/after実行はありません。無駄なく一度ずつ呼ばれます。
(詳しいことはajc生成ソースを見てね。暇な時にでも。)
低能技術者は俺です。
腹かっさばいて逝って来まーっす!
0080デフォルトの名無しさんNGNG
>>78
あとconstructorとかcatchまわりも指定できますね。(pointcut)
このpointcutごとの挙動を定義するのがadviceらしいです。
0081デフォルトの名無しさんNGNG
>>77
GoF本のVisitorパターンみると、「目的」の記述に
"クラスに変更を加えずに、新しいオペレーションを加える。"
という一文があるんで一見当てはまりそうだけど、違う気がする。

オペレーションの追加がありそうな部分を見抜いて、予め「仕掛け」を
作っておくのが多くのパターンに共通するやり方で、それらうち
二重に折り返した多態を使うのがVisitorパターンではないだろか…

少なくともこのスレで挙げられた例には、「仕掛け」も「多態」
も見あたらない。aspect側から一方的にロジックを追加している。
0082デフォルトの名無しさんNGNG
C#はAttribute?とかいうのを使ってAOPみたいなことができるそうですが、
どうなんでしょう?
0083デフォルトの名無しさんNGNG
>>82
名無しさん#さんがサンプル作ってるよ。
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1003826049&res=12
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1003826049&res=13
0084デフォルトの名無しさんNGNG
lispで自動化
仕組みを作のが面倒臭いが。
0085デフォルトの名無しさんNGNG
>>81
なるほど、目的は似てるけど実装方法がずいぶん違うようだ
Visitorは
1.オペレーションの追加を予測し、visitorを受け入れる仕掛けを
 前もって、用意しなければいけない
2.オペレーションが追加される側のオブジェクト構成が変化すると、
 visitorも変化させなければならない
という欠点があるからねぇ
0086デフォルトの名無しさんNGNG
>>83
面白かった。ありがとね。
AspectJと比べるとかなり面倒なソースだけど、
素のC#で使えるのは良いですね。
もしかして、この辺りからアスペクト指向も普及してくんですかね。
0087デフォルトの名無しさんNGNG
AO関連のパターンって、どっかで発表されてないかな?
AOのアナパタ、デザパタ、イディオムとか。
あと、AOの問題をOO的に解決するパターンとか。
0088デフォルトの名無しさんNGNG
>>86
聞きたいんだけど、AspectJってコンテキスト(JoinPoint)にこちらから
情報を追加することはできるのかな?WebでAPIリスト見た感じ、getterしか
ないからできなさそうなんだけど。

で、C#のContextAttributeでは、コンテキスト独自のプロパティを
管理できるんだよね。単に実行前後で呼び出されるってだけじゃなくてさ。
だからAspectJに比べるとコード量がぜんぜん違うんだと思うんだけど。
0089名無しさん♯NGNG
>>88
ContextAttributeは、本来Remotingで使うものよん。
AOPを意図した機能とは言いがたいかも。

処理の前後でインターセプションができるからこんなお遊びもできるよ、
という程度で作ったのが >>83 のサンプルね。
0090デフォルトの名無しさんNGNG
>>88
おっしゃる通り、JoinPointはread onlyです。
ただしJoinPointに相当するのはIMessageSinkだと思います。
コンテキストに近いのはどちらかと言うとaspectの方ではと思います。
(どちらにしても、少しこじ付け気味ですが。)

だとするとintroductionってのを使えば、ご要望の処理は可能です。

例えば>>83の例をもとにして言うと、DepositやWithdrawの
実行に通し番号をつけてBankAccountのインスタンス毎に管理するような
処理を、BankAccountの変更無しに追加できます。

>>89
C#って食わず嫌いだったけど、結構楽しそうだね。
0091デフォルトの名無しさんNGNG
>>89
あー、♯さん、やっぱり自分で書いてておわかりでなかったんですね。
Remotingで使うものですよ、もちろん。でもRemotingのRemoteっていうのは
Context外って意味なんですよ、.NET Frameworkでは。で、それは実は
.NET Framework new!ではなくて、MSはMTSのときにすでに実装しているんです。
ですから、コンテキスト属性は、AOPを意図したもの「です」。MSはCOM+の
ときから、Aspectって言葉使ってましたよ。
↑だからえらいなんて言いたいわけじゃないです。AOPを意識しているって
ことを説明したいだけ。

>>90
なるほどなるほど。AspectJ、なかなかやりますね。aspectj.org、もうちょっと
漁ってみよう。
ContextAttributeって書いちゃったからだめだったんですね。あそこは
コンテキスト属性って書けばよかった。
0092デフォルトの名無しさんNGNG
>>13
>>14
++をたてに並べるからC#なんだってさ。
++
音楽で少し高いって意味もあるらしいけど。
0093デフォルトの名無しさんNGNG
++を斜めに重ねて並べるってかんじだが
Visual C++のことを、出る前にC#と呼んでたのが懐かしい。
0094デフォルトの名無しさんNGNG
>>1
薄っぺらなトンデモ系っぽい本だが
Agent Oriented ProgrammingがOOPの次に来るとか
書いてあるやつを持ってる。
http://www.amazon.co.jp/exec/obidos/ASIN/4797305754/ref%3Db%5Fbr%5Fl%5F8%5F2/250-1168776-9396231

Aspectとはぜんぜん違って、AIとか遺伝的アルゴリズムとか
そっち系みたいな感じだったけどね。
個人的にはAspectの方に共感を覚えるかな。

>>93
詳細をキボンヌ。
0095デフォルトの名無しさんNGNG
でも、Agent Oriented Programming も結構前からあるよね。

> AIとか遺伝的アルゴリズムとか

だったっけ?
0096デフォルトの名無しさんNGNG
>>94
エージェント指向はどちらかというとアーキテクチャレベルの話だからねえ。
自律的(って何?)なプログラムをエージェントと呼び、
人間に代わってエージェントプログラムが色々面倒な作業をやってくれるといいなあ、という感じ。

実装で有名なのはこれくらいかな。
plangent , beegent - 東芝
aglet - IBM
0097名無しさん♯NGNG
>>91
> でもRemotingのRemoteっていうのは
> Context外って意味なんですよ、.NET Frameworkでは。

それは知りませんでした。ありがとうございます。
マシン境界としか考えてなかった...。

漏れがふだん見ているMLでも、1年以上も前から議論になっていた...。(;´Д`)

 http://discuss.develop.com/archives/wa.exe?A2=ind0007&L=dotnet&F=&S=&P=9965
0098デフォルトの名無しさんNGNG
自律性とは「自分のことは自分でやる」ってこと。

この自律性を、三角形が自分自身を描画したり、台帳と伝票が
語り合ってしまう程まで過激に取り込んだのがオブジェクト指向。

…かな?
0099デフォルトの名無しさんNGNG
>>96
現在、Bee-gentダウンロード中。
plangentはキャラクターが可愛くないからダメだ。
agletは、なんか今alphaworksつながらないんで、また今度にする。
0100デフォルトの名無しさんNGNG
>>96
そんな事は関係無くトレンド転換するのがソフト業界。
0101デフォルトの名無しさんNGNG
↓こんなの見つけた。
http://www.fipa.org/

'The Foundation for Intelligent Physical Agents'
だってさ。エージェント界のOMGみたいなもんかな。

って、エージェント技術のスレってなかったっけ?
■ このスレッドは過去ログ倉庫に格納されています