[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[jfriends-ml 1467] Re: 読書会 (Java スレッドプログラミング) 第1回議事録



高橋(徹)です。

> 澤田です。
:
> 思うので、議事録を参考にしながらもう一度読んでいく予定です。
読書会に出ててもよく分からない部分がたくさんあります。
もう一度読んでみないと・・・

> >    ◇P4
> >        「アグリゲーション」の日本語での訳は何か?
> 
> 該当個所は UML の説明なので、それならば「集約」だと思います。
◇と◆との違いについても話題になっていました。
「UMLユーザガイド」によると◆はコンポジションとなっていました。
#単に用語の整理ですが。
それから、ロール、変数名の違い(UMLのクラス図でクラス間の関連に
記述するもの)についても話題にあがっていました。
#Roseなんかでリバースすると、ロール名は全部変数名になってしまいます。

> >    ◇P9
> >        ソースコードの引数チェックにおいて、例外をthrowしているが、こ
> >      のような処理は良いものなのか、疑問があるという意見あり。
> >        (スレッドとは関係無い話ですが)
> 
> これはEiffelとかにある「事前条件」をJavaでやってみた、ということなのでは?
「有無を言わせずRuntimeExceptionで落してしまうのはよくないのでは?」
という意見です。開発時はよいのですが、運用時にRuntimeExceptionで落ちる
のはまずいよねという内容だったと思います。
 事前条件は、契約による設計(Design By Contract:DBC)ですね。
「達人プログラマー」にも記載があります。JavaにDBCを取り入れるiContract
というのがあるそうです。
http://www.reliable-systems.com/tools/iContract/iContract.htm
#達人への道は険しいようです。
#余談ついでですが、Microsoftの.NETにはEiffelも動かすようですね。。。