トップページ⇒tech
1001コメント317KB

国産DIコンテナSeasar その8

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2006/12/08(金) 07:48:39
一部で話題になっている国産オープンソースDIコンテナSeasar V2(略してS2)。
ってどうよ?みんなもう使ってるの?
使用経験とか、実戦配備情報とか、つかえねーよボケ、とかいろいろ書いてね。

本家 seasar.org
http://www.seasar.org/

Seasar Projectグループ
http://seasarproject.g.hatena.ne.jp/

ひがやすをblog
http://d.hatena.ne.jp/higayasuo/

前スレ
その1 http://pc5.2ch.net/test/read.cgi/tech/1092044210/
その2 http://pc5.2ch.net/test/read.cgi/tech/1098885253/
その3 http://pc8.2ch.net/test/read.cgi/tech/1102862221/
その4 http://pc8.2ch.net/test/read.cgi/tech/1119608621/
その5 http://pc8.2ch.net/test/read.cgi/tech/1135986150/
その6 http://pc8.2ch.net/test/read.cgi/tech/1148204750/
その7 http://pc8.2ch.net/test/read.cgi/tech/1153060167/
関連スレ
Java Spring Frameworkを語るスレ
http://pc8.2ch.net/test/read.cgi/tech/1077465099/

Dependncy Injectionを語るスレ
http://pc8.2ch.net/test/read.cgi/tech/1099827125/

Java⇔RDBのMapping-Frameworkを語るThre Vol.4
http://pc8.2ch.net/test/read.cgi/tech/1134701684/
0412デフォルトの名無しさん2007/01/09(火) 06:08:14
「まじか」はDQNケテーイ?
0413デフォルトの名無しさん2007/01/10(水) 00:06:53
>>411
書いた所でDQNだろ?
0414デフォルトの名無しさん2007/01/10(水) 00:07:50
つーか、翻訳DQNにseasarがイチャモン付けら照るぞ。
http://www.eclipsewiki.net/eclipse/index.php?%A5%D7%A5%E9%A5%B0%A5%A4%A5%F3%C6%FC%CB%DC%B8%EC%B2%BD%A5%D7%A5%E9%A5%B0%A5%A4%A5%F3#m01d247c
どういう意味か訳してくれ。
0415デフォルトの名無しさん2007/01/10(水) 00:25:47
>>414
AOPの実装といえばほぼAspectJしかなかった時代を知らんだけだろ
0416デフォルトの名無しさん2007/01/10(水) 01:18:23
依存性を排除するんじゃなくて必要に応じて変えればいいってことか
発想はおもしろいと思うがあのpleiades-config.xml見ちゃうとな…
0417デフォルトの名無しさん2007/01/10(水) 07:33:42
なんでも出来ることがすごいことだと思ってる人って
どの分野でも必ず出てくるね。
0418デフォルトの名無しさん2007/01/10(水) 19:20:56
何でも出来るのは凄い事だろ。
0419デフォルトの名無しさん2007/01/10(水) 22:00:02
何でも出来るのはすごいけど、何をすれば正解なのかわからないのはよくないだろ。
0420デフォルトの名無しさん2007/01/10(水) 23:17:05
何でも出来るものを作る
↓
目的に応じた手段が増える
↓
覚えることが増える
↓
複雑化する
↓
結局、標準のクラスライブラリの焼き直し?

複雑なJ2EEの再構築とか言っているが、再構築したものも複雑。
「再構築」ではなくて、「非標準化」だろw
0421デフォルトの名無しさん2007/01/10(水) 23:39:59
>>420
再構築ではあるんじゃない?
0422デフォルトの名無しさん2007/01/10(水) 23:50:42
言いたいのはなんでも出来るとかじゃないだろ。
newするインスタンスをコンテナが管理して
必要に応じて設定で変更できるってことだろ。

翻訳はどうでもいいが、普通にnewしたインスタンスを管理できるなら
それにこしたことはないんじゃねーの。
0423デフォルトの名無しさん2007/01/11(木) 00:23:22
今までいろんなのを引き合いに出して優位を騙ってきたSeasarだが
LiQに続いてPleiadesと引き合いに出される方になってきたなw
0424デフォルトの名無しさん2007/01/11(木) 00:43:21
Pleiadesの作者の言っていることは割と正論。

JDK5以降ならクラスのロードをフックできるので、
Hogeというクラスのロードが要求されたら、
フックした側でバイトコードを換えればよい。

例えばHogeインターフェイスとHogeImpl1とHogeImpl2があれば、
テスト時はHogeImpl1で本番時はHogeImpl2という風にも可能。
これは既存のDIでも出来る話であるが、利用コード側が、

Hoge hoge = new HogeImpl1();
か、
Hoge hoge = (Hoge)container.getComponent(Hoge.class);

の違いではあるが、Hogeは業務に関係あるものでも、
containerは業務に無関係で、DIコンテナの為に仕方がなく使っているもの。

ぶちゃけ、Seasar2を使って組んだ業務システムをリプレイスするときを考えてみろ。
業務に関係ないコードが点々と存在して、
インスタンスのライフサイクルもコードからは追いかけられないんだぞ。
他人が作ったメソッドで取得したハッシュマップからインスタンスを取得するときに、
ライフサイクルとか、正しいインスタンスなのか、自信がもてないだろ。
0425デフォルトの名無しさん2007/01/11(木) 00:52:16
ちょっと待つヨロシ。

コンテナからルックアップするコードを
そこかしこに書いてるんですか?
俺のコードは setter injection が大前提だから
ルックアップなんて一切記述してないんですけど。

あとライフサイクルに注意が必要なクラスは、
ドキュメント(javadoc で十分だが)に記述しませんか?
てか記述されてなかったら俺は怒りますけど。
記述がなければ自信なんて持ちようがないです、俺は。
0426デフォルトの名無しさん2007/01/11(木) 00:56:13
で、記述が無いことのほうが多いっていう話じゃないのか?
0427デフォルトの名無しさん2007/01/11(木) 00:56:50
pleiadesの場合はソースコードを一切改変したくないんだから
ルックアップするコードが一箇所でもあればだめなんだろ。
0428デフォルトの名無しさん2007/01/11(木) 01:04:18
要は業務ソースやフレームワークに一箇所でも
コンテナのコードがないほうがいいんじゃね?
ってことだろ。EclipseにPleiadesのコードなんか入ってないからな。
04294242007/01/11(木) 01:30:12
>>428
そうそう。

フレームワークを使うってことは、
確かに実装コードがフレームワークに依存するし、
多少の実装コードの汚れは仕方がないかもしれない。

話がちょっと変わるが、Pleiadesのようなアプローチであれば、
各種フレームワークをSeasar2で動くようにする、
ラッパーライブラリは全くいらないと思う。
S2StrutsのようにStrutsのコードだけ使って
Strutsの流儀を無視したものを提供したければ話は別だが。

さっきの発言はちょっと痛かったかもしれないけど、これだけは言わせてくれ。
ぶっちゃけ、Seasarの中の人たちって、ちょこちょこポリシーが変わる気がする。
「進化」じゃなくて「変わる」だけね。
しかも変わるのが利用するアプリケーションの設計にかかわる部分でもある。
つまりね、安心してアプリの設計ポリシーをSeasar2に任せられないってこと。

俺もSeasarを使ってはいるが、フレームワークではなくライブラリ的な使い方だけ。
セキュリティ目的でバージョンアップすると、設計思想や使い方まで変わると困るから、
差し替えが可能な使い方までしかしていない。

#ブログに書きたいのだが、中の人たちから粘着攻撃されそうで、
#言いたいことが全然書けないよ。
0430デフォルトの名無しさん2007/01/11(木) 01:45:41
変化ヲ抱擁セヨ
0431デフォルトの名無しさん2007/01/11(木) 02:40:32
>>429
特定シマスタ
0432デフォルトの名無しさん2007/01/11(木) 02:41:43
>Pleiadesのようなアプローチであれば
Eclipse そのものがPleiadesのようなアプローチであれば・・・
plug-in 同士が連携するってのはもう絶望的に感じますが。

なんつーか Java でそれをするか?って感じがするんですよ。
もっと動的な言語使えばスッキリ行くだろうに
なんで無理にJavaでやりたがるんだろうって。
0433デフォルトの名無しさん2007/01/11(木) 11:27:35
>>424
ロードのフックってjavaagentのこと?
あれ、一見便利だが、動的に作成したClassLoaderとの相性が最悪じゃね?
0434デフォルトの名無しさん2007/01/11(木) 12:54:50
>>430
あ、それクライアントとウチの上司の好きな言葉だ。
そして次の言葉は「但し、納期はそのままね。」
04354242007/01/11(木) 23:13:17
>>433
ClassFileTransformerをきちんと設計すればおk。

ロードしようとしたクラスローダが引数に渡される。
(実際にはdefineClassを実行したクラスローダ)
ブートストラップクラスローダの場合はnullが渡されるが。

動的に作ったクラスローダでdefineClassを行えば、
引数にそのクラスローダが渡されるので、
変換したくなきゃreturn null;でおk。
変換したけりゃ、新しいバイト列を作って返せばいい。
クラスローダとの相性はあまり関係ないと思われ。

ちなみに、Instrumentationのインスタンスはpremainで渡されるが、
その後は好きなところで使用してもいいので、
premainで適当なクラスのstaticフィールドに格納するのもよし。
後からアプリケーション側でロードのフックの実行の制御するのも可能。
0436デフォルトの名無しさん2007/01/12(金) 00:46:19
>>425
ライフサイクルに関してはそういうのがメンドイから、pleiadesの奴もデフォは
prototypeのほうがいいって言ってんじゃね?

setter injectionも環境依存とかの本当に必要なとこだけにして、
あとは普通にファクトリとかインタフェースを設計すればいい。
テストのためにsetter injectionを正当化するのはおかしいと思わね?
まー、newするインスタンスを動的に変えれる前提だけどな。
だけど、動的に変えまくってしまうとコード追えなくなるのは同じ希ガス。
0437デフォルトの名無しさん2007/01/12(金) 00:48:12
>>435
例えばfoo.warとbar.warをTomcatにデプロイしたとして
両方に同じjarファイルがあるとしてその中のクラスを
foo.warの方だけbar.warに影響なく変換とかできる?
0438デフォルトの名無しさん2007/01/12(金) 00:58:52
>>436
> だけど、動的に変えまくってしまうとコード追えなくなるのは同じ希ガス。

DIコンテナだとnewするコードがないから何が来るか分からないってことはすぐ分かる
pleiadesだとnewするコードがあるのに見たとおり動くとは限らない
ソースをメンテするならpleiadesは辛い気がする
04394242007/01/12(金) 01:02:17
>>437
できるよ。
そもそもfoo.warとbar.warでは使用されるクラスローダが違う。
同じJarでもWEB-INF/libのJarファイルはWebAppClassLoaderでロードされるから、
それぞれが別クラス扱いだよ。

そもそもVMで「同じクラス」という認識は、
クラス名が同じかつ、クラスローダが同じということだ。
違うクラスであれば、ClassLoader#defineが可能。
0440デフォルトの名無しさん2007/01/12(金) 01:07:55
みんなS2Unit使ってるのか?
04414242007/01/12(金) 01:14:32
>>438
それも一理ある。

っつーか、各種コンテナの共通アダプタを作ればよくね?
コンテナ依存の機能は使えないようにするか、
エミュレートするようにすればいいし。

Jakarta Commons-DI Containerっていうのがあれば、最高じゃない?
Commonsなら捺印ナビリティもアップだろ。

過度なDIは避けてCommonsの提供するAPIレベルでのみDIを行うようにすれば、
Seasar2がこけてもSpringがあるし、特定のコンテナに依存するのがヤダってのも回避できる。
0442デフォルトの名無しさん2007/01/12(金) 01:15:32
>>440
信者か中の人だけだろ。
0443デフォルトの名無しさん2007/01/12(金) 01:17:11
>>439
違うクラス扱いになるのは分かる
問題はClassFileTransformerにその区別ができるか?
foo.warのWEB-INF/lib/xxx.jarとbar.warのWEB-INF/lib/xxx.jarの
どっちもWeebAppClassLoader(インスタンスは違えど)でロードされるわけだが
foo.warのWEB-INF/lib/xxx.jarの中のクラスは変換するが
bar.warのWEB-INF/lib/xxx.jarの中のクラスは変換しない
ってことができるのか?
0444424 2007/01/12(金) 01:36:24
>>443
提供されているAPIではできない。

ハック技としては、URLClassLoaderにキャストして、
getURLs()でリアルなjarの位置から判断するのもある。

現実的な方法はtransform.propertiesに
transform = true
とか書く。

transform.propertiesをWEB-INF/classesに置いて、
transformメソッドの引数のクラスローダを使用して、
ResourceBundleを作るかPropertiesを作って判定すればいい。

引数のクラスローダで読み込めば、foo.warのクラスローダとbar.warのクラスローダで
それぞれ別々のリソースが読める。

クラスローダはクラスをVMにロードするだけじゃなく、
バイトコードを含む「リソース」をロードするのも1つの機能。
0445デフォルトの名無しさん2007/01/12(金) 01:46:33
>>444
> transform.propertiesをWEB-INF/classesに置いて、

なるほど
それならWar単位にカスタマイズできるね
0446424 2007/01/12(金) 01:48:29
追記:
例えばクラス名がhoge.Piyoだとすると、
transformメソッドの中で、

URL url = loader.getResource(className.replace('.','/') + ".class");
とやれば、クラスをロードせずに、そのクラスのリアルな位置がわかる。

urlの中身はfile:///c:/xxx/yyy/WEB-INF/lib/hoge.jar!hoge/Piyo.class
とかになっているはず。(ごめん、URLは適当だけど。)
このときのyyyがコンテキスト名にならないかな?
0447デフォルトの名無しさん2007/01/12(金) 01:54:29
>>446
それよりは>444の方がいいね
pleiades-config.xmlみたいな設定ファイルをwarなりjarなりに入れておけば
それが見えるクラスローダの範囲だけカスタマイズできれば扱いやすそう
0448デフォルトの名無しさん2007/01/12(金) 01:56:05
>>438
pleiades的には基本はnewの変更はなしだろ。
基本はソースコード上のままでちょこっとテスト用のクラス入れ替えたり、
ソースがいじれないときに入れ替えたり。

だからファクトリとか普通に設計しれってことなんかと。
0449424 2007/01/12(金) 02:09:12
っつーか、Java初心者が某銀行のPJに入って、
Seasar2だけ覚えたその後、きっと不幸なプログラマになるぞ。

「クラスにフィールドを書いてセッターを書けば、
よくわかんないけど、勝手にインスタンスが入るんだよね」

「勝手にロールバックしてるみたい。
中でなにやっているのかよくわかんないけど・・・」

「インターフェイスってよく知らないけど、
こうやって書けばいいみたい」

くらいの認識のやつらが業界にウロチョロするぞw
0450デフォルトの名無しさん2007/01/12(金) 02:21:44
今までだってそうやってきたんだから今さら後戻りはない
IPLとか割り込みとか知らない奴らが不幸とは限らん
0451デフォルトの名無しさん2007/01/12(金) 07:53:06
442はさあ・・何て言うか公平な議論する気ゼロなの?

449で挙げてる不幸なプログラマが
pleiades使ってもやっぱり不幸になるよ。
(不幸になるのはそいつじゃなくて周りな。本人は自業自得。)

「後から中身替えられるからどうでもいいよ。」
「変更かかるかどうか分からないけど全部interfaceで宣言してしまおう。」
0452デフォルトの名無しさん2007/01/12(金) 07:54:00
442じゃなくて424でした。
どう見てもアンカーミスです。本当にごめんなさい。
0453デフォルトの名無しさん2007/01/12(金) 07:57:27
>>452
アンカーってなんだ?って所から勉強してみようか
0454デフォルトの名無しさん2007/01/12(金) 08:50:52
どうでもいいけど、せめてDBアクセスフレームワークとWebフレームワークと
テスティングフレームワークを一式揃えてから宣伝してくれw

>>429
>俺もSeasarを使ってはいるが、フレームワークではなくライブラリ的な使い方だけ。
ここは同感というか、そもそも現状のJavaフレームワークでポリシーまで含めて
全て賛同できるものが存在しない。
Javaの弱点は、標準が失敗(J2EE1.4まで)したせいで、
まったく統一感がなくなってしまったことだと思ってる
開発現場を変わる度に、作り方もポリシーも全然違ってくることがざらにある。
Javaで開発の度に新たなフレームワークを覚え続けるよりは、
統一感のある他の言語環境に移ったほうがマシかなと最近はよく思ってる
0455デフォルトの名無しさん2007/01/12(金) 09:02:48
>>454
代案がC#とASP以外になんかあるか?
速度犠牲とメモリ管理の煩雑さからチームを守れる選択肢って他にないじゃん。
0456デフォルトの名無しさん2007/01/12(金) 09:14:27
>>455
現状ならC#(.net)かRubyだな
速度犠牲はシステムの要求速度にもよるだろ
0457デフォルトの名無しさん2007/01/12(金) 09:46:22
>>454
PleiadesはDIコンテナじゃなくて、翻訳するためのAOPコンテナだろ。
Webフレームワークが無いとか何の話だよw
Pleiadesみたいに汎用DIコンテナもアプリケーション側から
依存が無いほうがいいんじゃないかって話だよ。

で、おまいが考える標準はどんなんよ。
0458デフォルトの名無しさん2007/01/12(金) 11:19:34
標準なんて無いっしょ。
DIコンテナのバランスが良いと思う人と、
Pleiadesみたいになんでも変更し放題が素敵と思う人と
どっちも居てもいいじゃん。

ただJavaで「なんでも変更し放題」をやるよりも
(そのために設定ファイルが煩雑になってしまうくらいなら)
スクリプト言語でやった方がわかりやすいねと俺は思う。
あなたがそう思わないのも勝手。

それとは別に「一式揃えてから宣伝してくれw」は単なるイチャモンだわな。
0459デフォルトの名無しさん2007/01/12(金) 11:39:19
ファクトリでコンテナ依存コード書くのが嫌なら
JNDI使ってSeasarに登録したコンポーネント呼び出すこともできるよ
0460デフォルトの名無しさん2007/01/12(金) 12:27:37
>>それとは別に「一式揃えてから宣伝してくれw」は単なるイチャモンだわな。

はあ?

0461デフォルトの名無しさん2007/01/12(金) 13:01:06
>>458
ほっといれやれw
>460はPleiadesがDIコンテナだと思ってたんだろw
0462デフォルトの名無しさん2007/01/12(金) 22:34:59
ネタが無いだけになんにでも食いつくなwww
0463デフォルトの名無しさん2007/01/12(金) 23:02:56
>>463
誰のことっすか? どこのことっすか? 祭りっすか?
0464デフォルトの名無しさん2007/01/12(金) 23:10:34
さてiRuleが発表されたわけだが……
0465デフォルトの名無しさん2007/01/12(金) 23:57:47
POJOみたいにネーミングで広まる事を期待してるんかな
0466デフォルトの名無しさん2007/01/13(土) 13:51:23
ちょっwwwwwwおまwwww
iRulewwwwwwww
0467デフォルトの名無しさん2007/01/13(土) 15:20:48
なんでもかんでも「i」つけりゃいいってもんじゃなかろう。
ナウなヤングに大ウケしたいのかね。
0468デフォルトの名無しさん2007/01/13(土) 15:38:30
バカウケしたいんだよ
0469デフォルトの名無しさん2007/01/13(土) 15:40:40
規約でいいと思うけど。
規約ってそんなに嫌われてるのか
0470デフォルトの名無しさん2007/01/13(土) 15:48:19
>>469
嫌われてる
0471デフォルトの名無しさん2007/01/13(土) 15:49:04
なんで?楽だろ
0472デフォルトの名無しさん2007/01/13(土) 15:49:42
馬鹿が書いた規約は嫌い
0473デフォルトの名無しさん2007/01/13(土) 16:01:50
規約が駄目でルールはOK
0474デフォルトの名無しさん2007/01/13(土) 16:06:07
ちがわねー><
0475デフォルトの名無しさん2007/01/13(土) 16:15:02
馬鹿が作ったルールも嫌い
0476デフォルトの名無しさん2007/01/14(日) 14:50:23
S2Ruleでいいだろwwwww

規約どおりなら設定不要もわかる。
規約外は設定すればいいっていうのもわかる。

でもな、規約がS2の中の人たちが勝手に決めたものしかないだろ。

規約を設定でカスタマイズできるようになれば、
S2のサイトで規約を見て勉強しなくてもよくなるし、
なじめない規約に無理やり合わせる必要もない。
規約そのものをオブジェクト化すれば、ツールも作りやすいだろうしな。

静的情報の解決を設定ファイル+配備内容にしてるだろ。
配備内容を直接使用するのではなく、
規約オブジェクトというフィルタを経由すれば難しくはないだろ。
指定せずに使えば今のS2の規約が適用されてもいいんだし。
0477デフォルトの名無しさん2007/01/14(日) 15:00:43
敢えて i にしたのはSeaserにとらわれない一般的なルールにしたいからだろ?
0478デフォルトの名無しさん2007/01/14(日) 15:16:29
>>477
いや俺たちが標準だだろ?
0479デフォルトの名無しさん2007/01/14(日) 15:39:31
>>476
× S2のサイトで規約を見て勉強しなくてもよくなるし、
○ S2のサイトで規約を設定する規約を見て勉強しなくちゃいけないし、
0480デフォルトの名無しさん2007/01/14(日) 15:49:27
>>478
うん
Seasarという枠にとらわれることなくって意味でね
0481デフォルトの名無しさん2007/01/14(日) 17:03:39
規約云々もいいけどさ、

「J a v a d o c 用 意 し ろ よ w」

あっ、Javadocを書かないのも規約の1つだったわ。
忘れてたよ。
書かなくてもいいことは書かないのは開発効率のアップだったね。
そりゃJavadoc書かなきゃ効率もアップだわ。
流石はS2だわ。
0482デフォルトの名無しさん2007/01/14(日) 17:09:07
てか冷静に考えてJavaDocいるか?
直接Seasarのクラスのメソッド利用する時ほとんどないだろ??
0483デフォルトの名無しさん2007/01/14(日) 17:27:29
>>428
それを言ったら、SpringもJavadocいらないだろw
自作でS2XXXXみたいな「何か」を作りたいときとか困るだろ。流石に。

まぁ、そういう使い方をしたいやつには、「コード嫁」ってことなんだろうな。
それも規約の一部ってことでしょw
0484デフォルトの名無しさん2007/01/14(日) 17:34:14
アノテーションていいね
0485デフォルトの名無しさん2007/01/14(日) 17:42:55
コード読めばその時点で動くものは作れるだろうけど
そのコードがいつまで動くか分からんじゃんよ。
設計思想とか使用する側の注意点とか、
そういうのをコメントしとくためのものなのに、
「読めば分かるだろ」じゃ恐ろしくて手が出せないよ。
0486デフォルトの名無しさん2007/01/14(日) 17:46:09
>>485
文句あるなら使うなってiRuleに書いてあったおw
0487デフォルトの名無しさん2007/01/14(日) 17:54:03
>>485
Javadocに書いてあってもいつまで動くか分からんよ?
仕様書に(ry
0488デフォルトの名無しさん2007/01/14(日) 18:29:59
Javadocに宣言された動作をコードが満たさない場合は、
それをバグというじゃん。

例えば、int plus(int,int)ってメソッドがあって、
println(plus(1,2));とやれば、3が表示されると思うだろ。
でも4が表示されたらバグだと思うだろ。

そこで、Javadocに「2つの引数を合計して1足して返す」と明記されてたら、
上記の例では全く逆に思うだろ。

そして動作が変わってJavadocが変わらない場合は
動作と仕様が一致しなくなるからバグになるだろ。

書いていない場合は、動いたものが仕様。
よくある、「バグ?バグじゃねぇよ、仕様だよ」となる。
つまり、メソッドの動作について宣言していないため、
いつでも作者の都合が仕様となって都合がいいと言うことだ。

テストコードがたくさんあるのはいいが、
テストでOKとされる前提がないわけだ。
Hogeと言うクラスの動作がJavadocに宣言されていわけだから。
HogeTestで一体何をテストするのかと。

HogeTestのテストコードを満たすのがHogeの仕様というならいいが、
それをHogeのコードだけを見て理解できるか?

だから、コミッタ連中はコード嫁くらいにしか
思ってないんじゃねーのと言われるわけだ。

S2Containerというクラス以外は隠しAPIか?と言いたい。
0489デフォルトの名無しさん2007/01/14(日) 18:32:30
Javadoc書いたからって詳細設計書が省略されるって事にはならんからなー
0490デフォルトの名無しさん2007/01/14(日) 18:57:40
JavaDocは賛否両論あるけど、個人的にはチュートリアル/ユーザーガイド/サンプルが豊富に揃っていれば
あとはクラス名・メソッド名で推測して使う方だな。

そんなわけで、全ての機能についての解説を網羅したドキュメントを痛切に希望。このスレで散々言われてることだろ。ちったぁ勉強しろよ。
0491デフォルトの名無しさん2007/01/14(日) 19:16:13
>>490
Seasarにゃドキュメント書けるやつが不足してんだよ。ちったぁ学習しろよ。

APIにはjavadoc欲しいよな。でないとどれがAPIなのかわからん。
0492デフォルトの名無しさん2007/01/14(日) 19:21:08
>>491
Javadocプロジェクトあんだろ。
ちったぁ勉強しろよ。
0493デフォルトの名無しさん2007/01/14(日) 19:22:18
>>491
設計上の理由でpublicだけど、ユーザーに使われる事を想定していないメソッドとかあると面倒だしな。

まぁ、seasarにそんなメソッドあるのかどうかは知らんけど。
0494デフォルトの名無しさん2007/01/14(日) 19:24:32
またドキュメントネタか。何回ループしてんだよw
ドキュメント欲しけりゃSpring使え。
0495デフォルトの名無しさん2007/01/14(日) 19:25:11
>>494
了解!
0496デフォルトの名無しさん2007/01/14(日) 19:31:22
>>494
要はループの脱出条件を満たしていないわけだ。

while(!seasar.hasDocument()){
  seasar.createNewFramework();
  bbs.flame("no document!");
}
0497デフォルトの名無しさん2007/01/14(日) 19:36:33
散々ドキュメントが・・・と言われているのに、
周りの声を無視して新しいのをどんどん作ってるだろ。
そんな暇があれば、ドキュメント書けよと思うのだが。

少しは立ち止まって、今のバージョンの利用者の為になることをすればいいのに。
どんどん新しいことを取り入れるのはいいんだけど、
既存のユーザを蔑ろにして、単にフレームワークの知名度を上げたいだけだと思われ。
0498デフォルトの名無しさん2007/01/14(日) 19:39:17
実務ではドキュメントの重要性は、それがどれだけ有用かどうかに関わらず非常に大きい。
当然汎用フレームワークにだって仕様を解説するドキュメントを作成する責務はあるべき。
その観点が抜けてるんだったら、Seasarは作った奴らの趣味の域を抜けていない代物。
と、Seasar使ってないオリが言ってみるテスト。
0499デフォルトの名無しさん2007/01/14(日) 19:41:57
欲しいドキュメントってどのプロジェクトだい?
ヲイラ的にはS2Buriかなー。
あと、逆に十分といえるドキュメントがあるプロジェクトってないの?
S2Containerとか見難いだけで、内容と量は十分あると思うんだけど。
サンプルはどれも少ないねー。でもそれは中の人以外も作って公開してあげればいいのに。
0500デフォルトの名無しさん2007/01/14(日) 19:43:01
>>498
> Seasarは作った奴らの趣味の域を抜けていない代物。

何を今更…
ほとんどのコミッタが趣味でやってるだけだろ
0501デフォルトの名無しさん2007/01/14(日) 19:44:32
海外プロダクトと同じようにSeasarユーザ会でも作って自助努力すれば?
0502デフォルトの名無しさん2007/01/14(日) 19:45:40
>>500
やっぱそうか
kobaya・・・とか聞いてそうかと思った
0503デフォルトの名無しさん2007/01/14(日) 19:48:08
あと、Seasarって殆どの例外をRuntimeExceptionにして、
チェック例外の概念を無視しているだろ。
アレってどうよ?と思うのだが。

Javadocに@throwsで明記されていりゃわかるんだけど、
「このメソッドコールでどんな例外が発生するか」がわからないので、
適切なキャッチが難しいわけよ。
しかもチェック例外じゃないしメソッド定義のthrows節にも書いてないだろ。

あれは酷いわ。
0504デフォルトの名無しさん2007/01/14(日) 19:57:47
まー、何つーのかな〜、手元の自分らの都合から積み上げてあーだこーだとHow toをこねくり回してたって結論は出ないわさ。
例えば、どういうカキコすればコミッタ様が気持ち良くドキュメント書いていただけるのか、ということにまずきちんと向かい合うことです。
そしてそこから逆算して、それをどうやったら実現できるのかということを考える。
そもそも「何故、ドキュメントを書いていただかなければならないのか」ってのがすっぽりと抜けているんじゃないかえ?
それをほっぽり出して「正しいプロジェクトのあり方」なんてのを幾ら論じても、そりゃしっくりこんでしょう。
0505デフォルトの名無しさん2007/01/14(日) 20:05:39
>>504
別に書く気がなけりゃ、書かなくてもいいわけだが。
かわりのプロダクトを使うまでなので。

しかもMLしか窓口がないだろ。情報知りたいけど名前晒したくないって人もいるだろうし、
過去のMLの攻撃的なやり取りを見たら、絶対に質問する気になれない。
だからこそ、
・わかりやすいチュートリアル
・詳しいリファレンス
・Javadoc
・サンプルコード
が必要なのに。やれ何とかアジャイルとか、ページ何とかなんていらないので、
S2.3時代のコードに対するドキュメントを充実させろと。

しかも、何故ユーザが謙った態度を取らなきゃいけないのか。
お前ら何様だと。
0506デフォルトの名無しさん2007/01/14(日) 20:08:34
だってそういうやつらだからな
0507デフォルトの名無しさん2007/01/14(日) 20:08:51
>>505
お前こそ何様だよwww
0508デフォルトの名無しさん2007/01/14(日) 20:11:39
>>507
サーセンwwwwwwwwww
0509デフォルトの名無しさん2007/01/14(日) 20:13:40
>>505が言っているものが必要ってのは同意するが、居丈高に
命令したり罵声浴びせたりしたところで反発するだけだろ。
人間なんだし。
謙れとは言わんが、動いて欲しけりゃそれなりの行動があるだろ。

俺からすりゃ、何故おまえらがそんなに偉そうなのかが疑問だ。
お前ら芦P様かと。
0510デフォルトの名無しさん2007/01/14(日) 20:27:08
>>509
だーかーらー
動く気がなくて、使用に耐えられないと思えば、
別のプロダクトを使うまで。

っつーか、偉そうな態度とっているか?
2ちゃんで丁寧にお願いしますって書けってか?wwww

それなりに評価もしているから、辛い事を書いているわけだが、
そんな態度じゃ書く気になれんって、だから趣味レベルって言われるんだよ。
全く評価もしてなくて、興味もなければ、そもそもここに書かないだろ。

MLでこんなこと書けないでしょ。少しくらい中の人も空気嫁。
0511デフォルトの名無しさん2007/01/14(日) 20:31:49
■ おすすめ2ちゃんねる 開発中。。。 by FOX ★
このスレを見ている人はこんなスレも見ています。(ver 0.20)
Seasarファウンデーション [プログラマー]
Seasarファウンデーション [プログラマー]
過去ログ [リーマン]
「 ブルードラゴン 」 が早くも PS3 に移植!? [ゲーム速報]
■■■27歳職歴なしからの就職 part17 乱離篇■■■ [転職]

おいおい。無職もみているのかwwww
■ このスレッドは過去ログ倉庫に格納されています