- 1 名前:デフォルトの名無しさん mailto:sage [2006/07/16(日) 23:29:27 ]
- 一部で話題になっている国産オープンソースDIコンテナSeasar V2(略してS2)。
ってどうよ?みんなもう使ってるの? 使用経験とか、実戦配備情報とか、つかえねーよボケ、とかいろいろ書いてね。 本家 seasar.org www.seasar.org/ Seasar Projectグループ seasarproject.g.hatena.ne.jp/ ひがやすをblog d.hatena.ne.jp/higayasuo/ 前スレ その1 pc5.2ch.net/test/read.cgi/tech/1092044210/ その2 pc5.2ch.net/test/read.cgi/tech/1098885253/ その3 pc8.2ch.net/test/read.cgi/tech/1102862221/ その4 pc8.2ch.net/test/read.cgi/tech/1119608621/ その5 pc8.2ch.net/test/read.cgi/tech/1135986150/ その6 pc8.2ch.net/test/read.cgi/tech/1148204750/ 関連スレ Java Spring Frameworkを語るスレ pc8.2ch.net/test/read.cgi/tech/1077465099/ Dependncy Injectionを語るスレ pc8.2ch.net/test/read.cgi/tech/1099827125/ Java⇔RDBのMapping-Frameworkを語るThre Vol.4 pc8.2ch.net/test/read.cgi/tech/1134701684/
- 968 名前:デフォルトの名無しさん [2006/12/07(木) 19:15:13 ]
- ひがたんの美声をボリューム大で聞きたいでつ。
- 969 名前:デフォルトの名無しさん mailto:sage [2006/12/07(木) 22:18:25 ]
- うーみゅのブランド品を目の前で燃やしてみたい
- 970 名前:デフォルトの名無しさん mailto:sage [2006/12/07(木) 23:03:27 ]
- インタフェース切るのって、ただ、
AOPの適用ポイント明確にするぐらいにしか使わなくね? Action - Logic - Dao構成なら、 どーせActionなんてテストしないんだから、 Logicのインタフェースは作成不要じゃね?
- 971 名前:デフォルトの名無しさん [2006/12/07(木) 23:13:31 ]
- 声がもっとしっかり聞こえればよかったけど、
Web放送勉強になりました。
- 972 名前:デフォルトの名無しさん mailto:sage [2006/12/07(木) 23:25:49 ]
- >>970
とりあえず動くけどパフォーマンス的に問題があるロジッククラスがある場合に、 新しいロジッククラスに差し替えたいって要求が場合が他社と連携しての 開発ではあったりする。糞クラスを納品されたって訳だ。 そーゆー時に、俺らはチューニングされた新しいロジッククラスを設定ファイルを 書き換えるだけで投入できる。便利じゃないか? 俺らのチューニングしたロジッククラスは確かに早かった。 だが!ある特定の条件で発生する例外的な処理に対応しきれていなかった!! 修正するには根本的過ぎてかなり難しい! クラスに実装してたら、元ののバージョンを取得しようにも 他のクラスに手が入ってて入っている部分と切り出して チェックアウトするのがかなり難しいかもしれない!! そんな時、設定ファイルを書き換えるだけで、すばやくもとの実装に戻し、難を逃れる。 便利じゃないか?
- 973 名前:デフォルトの名無しさん [2006/12/07(木) 23:32:49 ]
- 便利!!!
- 974 名前:デフォルトの名無しさん mailto:sage [2006/12/07(木) 23:37:37 ]
- >>973
分かってくれたか!!!!
- 975 名前:デフォルトの名無しさん mailto:sage [2006/12/07(木) 23:52:47 ]
- テレビショッピングか何かを思い出したが、まさにそんな感じだな。
interface 作る・メンテするコストなんてたかが知れてる。 もともと実装クラスに存在する public なメソッドのいくつかを切り出すだけ。 修正する時の手間も本来の修正分(=実装クラスの修正)に interface のメソッドが増えるとか、シグネチャが変わる程度。 得られる効果は972氏のケースとか、 障害調査用実装とスイッチさせたりとか モック作ったりとか、そりゃもう夢は広がりんぐ。 もちろん、そういうことする必要に迫られない時も多々あるだろうけど、 せいぜい第二段落の作業が無駄になった程度。 僅かな手間をケチって何がそんなに嬉しいのか。 DIコンテナ使わなければそりゃ得るものは少ないだろうけど DIコンテナ使ってるなら問答無用でかけるべき手間。 定数が必要になった時、一箇所からしか使わないからって リテラルにマジックナンバー埋め込むかって話だ。
- 976 名前:デフォルトの名無しさん mailto:sage [2006/12/08(金) 00:26:35 ]
- 最後の例がちょっと分かりやすいと感じた。
- 977 名前:デフォルトの名無しさん mailto:sage [2006/12/08(金) 00:34:54 ]
- 超適当なインターフェイスの作り方
1.実装クラス〜Implを先に作る。 2.Eclipseでクラスを右クリック→リファクタリング→インターフェースの抽出を選択 3.インターフェイスに定義したいpublicメソッドを選んで、クラス名からImplを外して実行 4.パッケージが〜.implだった場合は、パッケージ名を修正して出来上がり だいたい15秒くらいでできるよw
- 978 名前:wildcats [2006/12/08(金) 00:39:36 ]
- >>975
別に手間をケチってる訳じゃないよ? インタフェイス抽出なんて僅かな手間だよね。
- 979 名前:デフォルトの名無しさん mailto:sage [2006/12/08(金) 00:54:55 ]
- そもそも、この議論の起点になった奴が必要なときには
インターフェイスの抽出で済むじゃんって言ってるが、 多分、大体のときに必要になるのはインターフェイスを抽出する作業じゃなくて、 インターフェイスを残して、実装を退避させる作業なんだと思うけどなぁ。 それに、実クラスだとどうしても直接インスタンスを生成できちゃうから、 面倒なときにはDI使わずに自分で new しちゃったりするんよねぇ。 そーゆーのを後から抽出したインタフェイスに置き換えていくのって面倒じゃない? 「ぎょぎょ、業務で固有なロジック限定って言ったでしょ!!誤読厳禁!」 つってるけど、週次処理をこの場合には特別に実行するだとか、 そーゆー風に利用箇所が分散する観点がすっぽり抜け落ちてる。 多分Seasar全般に言えるんだろうけど、作り捨ての雰囲気が強いよな。 自分らの作ったシステムをしっかり保守していける体勢を作ろうという観点が 非常に欠けてる。 最近の迷走ぶりは今日早く家に帰れることを重視するあまり 将来困ろうが知っちゃこった無いって発想に近いと思う。
- 980 名前:デフォルトの名無しさん mailto:sage [2006/12/08(金) 01:26:49 ]
- 改めて >>907 を読み返すと、
最後の意見はかなりの電波だな。 最初の意見は信仰する宗教の違いと思えなくも無いが。 二番目の意見は・・・Implって名前が嫌いなだけなのか?主張が分からん。
- 981 名前:970 mailto:sage [2006/12/08(金) 02:01:32 ]
- うーん、漏れは972みたいな状況になったことって一度もないんだが。
自分は、小さな開発規模しか経験してないってことなのかな。 だってさー、問題あったら、直接ロジックいじるじゃん? 別に協力会社が作ったソースであっても。
- 982 名前:デフォルトの名無しさん mailto:sage [2006/12/08(金) 02:04:48 ]
- >>975
俺は一箇所しか使わない & 直接書いた方が判りやすい場合はわざわざ定数化するよりマジックナンバー書いちゃうけど、だめかな? なんでも定数だとかえって読みづらくなる気がするんだけど・・・。
- 983 名前:972 mailto:sage [2006/12/08(金) 02:26:15 ]
- >>981
おまいは、俺の発言をちゃんと理解したのか?(誤字が多すぎて読みにくかったと思うが) 現在正常に動いているものを変更すると変更後のものが動作の正常性を保障できないだろ? テストクラスが準備されていたとしてもそれが本当に十分に記述されてるのか分からない。 そーゆー場合には、実績として動くことが保障されているクラスはそのまま残しておいて、 そのクラスをコピペしてから内部実装に手を入れていくべきだと思う。 そして、コピペ元は新しいクラスが十分な動作実績を持ったと判断したときに削除する。 俺が書いてるのはあくまで開発だけで閉じた話ではなくて、 障害発生時の一次対応の迅速さまで考えた話だから 「ばぐっすか?はいはい〜、なおしました。これでどうすか?オッケーすよね」 っていうアジャイルな流れとは相容れないかもしれない。 年間システム停止時間1時間以内とか、そういう目標を課せられたプロジェクトに 密に関わってる人間じゃないとそーゆー視点は育たないのかなーとも思う。
- 984 名前:デフォルトの名無しさん mailto:sage [2006/12/08(金) 02:26:58 ]
- 直接書いた方が判りやすい場合はそれで良いでしょ。
- 985 名前:デフォルトの名無しさん mailto:sage [2006/12/08(金) 02:43:17 ]
- >>983
まぁ熱くならずに。 字面を追っただけで利点を実感できたら、そいつは多分天才。 一度でも「あの時 interface 作っとけば・・・」な経験した後じゃないと、 事例挙げられても「ふーん?」で終わりですよ。
- 986 名前:デフォルトの名無しさん mailto:sage [2006/12/08(金) 03:53:49 ]
- >>972
>クラスに実装してたら、元ののバージョンを取得しようにも >他のクラスに手が入ってて入っている部分と切り出して >チェックアウトするのがかなり難しいかもしれない!! これって単にインターフェイスを定義するかどうかだけじゃなく、 ロジックを整理してクラス分割した上で、そのクラス同士を疎結合にできているかどうかまで 問われるよね? まぁ結局そこまで考えると、インターフェイスを使わずにクラス結合なんて考えられなくなるから 結果としては同じことになるんだけど ようするに、そもそもなんでインターフェイスを挟んでクラス間を疎結合にしようとしているのか 大元からしっかり考えないと、メリットを掴むのは難しいと思う。 単にインターフェイスを定義しても、そこで作ったロジッククラスが 一つだけのメソッドに1000行書いてるような巨大なトランザクションスクリプトだったりしたら 「設定ファイル一つで簡単に置き換える」とかいうわけにもいかないわけで・・・
- 987 名前:デフォルトの名無しさん [2006/12/08(金) 07:49:14 ]
- 次スレ
国産DIコンテナSeasar その8 pc8.2ch.net/test/read.cgi/tech/1165531719/
- 988 名前:デフォルトの名無しさん mailto:sage [2006/12/08(金) 10:35:00 ]
- >>970
>Action - Logic - Dao ここでのLogicってなに? トランザクションスクリプト?ドメイン?サービス? 多分、層が1つ足りないぜよ。 >>977 いいけど、そうなるとTDDじゃなくね? >>986 例えば、もともとトランザクションスクリプトなクラスAがあったら、 コピーして修正を加えたA'クラス(もちろんトランザクションスクリプトだけど)をつくって、 差し替えるだけだろ。 トランザクションスクリプト>ドメインモデルの切り替えは、DI云々以前に高コスト&高リスクな作業だと思う。 >>987 乙
- 989 名前:デフォルトの名無しさん mailto:sage [2006/12/08(金) 12:57:04 ]
- 結局、
>>985 これが真理
- 990 名前:デフォルトの名無しさん mailto:sage [2006/12/08(金) 20:37:10 ]
- >>987
乙 なんでファウンデーションスレをテンプレに貼ってないのかと思ったら、 変なのの隔離場所になってるのね。
- 991 名前:デフォルトの名無しさん mailto:sage [2006/12/08(金) 22:19:02 ]
- やることがいちいち姑息だよな
- 992 名前:981 mailto:sage [2006/12/08(金) 22:52:51 ]
- >>983
なるほどねー。 やはり、今までになかったですねー、そういうのは。 >>988 サービスですね。 Action - Logic - Daoは、S2JSFのEmployeeサンプルに倣って書きました。
- 993 名前:デフォルトの名無しさん mailto:sage [2006/12/09(土) 00:28:21 ]
- そろそろ埋めるか
- 994 名前:デフォルトの名無しさん mailto:sage [2006/12/09(土) 00:40:58 ]
- 埋める?S2Containerを?楽しそうだぜ!!
- 995 名前:デフォルトの名無しさん mailto:sage [2006/12/09(土) 00:44:06 ]
- 沖縄の守り神の獣肉(゚д゚)ウマー
- 996 名前:デフォルトの名無しさん mailto:sage [2006/12/09(土) 01:05:36 ]
- 食ったんかいw
- 997 名前:デフォルトの名無しさん [2006/12/09(土) 01:06:55 ]
- cap.from.tv/jlab-fat/s/fat1165514726432.jpg
- 998 名前:デフォルトの名無しさん mailto:sage [2006/12/09(土) 01:55:49 ]
- ume
- 999 名前:デフォルトの名無しさん [2006/12/09(土) 02:43:00 ]
- 1000だったらS2Spring作る
- 1000 名前:デフォルトの名無しさん [2006/12/09(土) 02:54:13 ]
- 日テレはルパンにひどいことをしたよね(´・ω・`)
- 1001 名前:1001 [Over 1000 Thread]
- このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
|

|