[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[jfriends-ml 10088] Re: Java 言語で学 ぶデザインパターン入門第 6 回議事録
福嶋です。
On Thu, 02 May 2002 13:40:43 +0900, according to the article
"[jfriends-ml 10087] Re: Java 言語で学ぶデザインパターン入門第 6 回議事録"
Murayama Toshikiyo <murayama@xxxxxxxxxxxxx> wrote:
> > P342
> > undo()メソッドの !commands.empty() という条件チェックは必要なのか?
> > データが無ければnullが返ってくるのではないだろうか?
> > または、例外が送出されるのではないだろうか?
> > --> データが空の場合には、Statck.pop()メソッドは EmptyStackException
> > という実行時例外を送出する
> ここが尻切れトンボになってるんですが,
> 結局「!commands.empty() は必要」という結論に
> 到達したんでしょうか?
> #多分大丈夫とは思うものの,例外の使い方を全然知らない
> #人ってのも結構いるらしいで念のため.
「!commands.empty() は必要」という結論になりました。
emptyであることは通常ありえるので、EmptyStackExceptionをcatchするという
例外処理にするのではなく、if文で切り分ける。
> ただし,「HashMapから取り出したのがStringだと分かっている」と
> いうような場合には,毎回Stringにダウンキャストするよりは,
> 間違ってString以外の場合でもエラーにはならないという問題は
> あるもののtoString()のほうがまだましなのでは.多分こっちの
> 方が早いし.
私の場合、
「HashMapから取り出したのがStringだと分かっている」のならば、
Stringでダウンキャストします。
おっしゃられるように「String以外の場合でもエラーにはならないという問題」
があるためです。
異常な状態で突き進むよりも、バグはバグと分かった方がよいですし。
#とある人から学んでなるほど、と思いましたです、ハイ。
> >> 「ベストプラクティス」の日本語の訳はなんであろうか?
> >> --> 最適解とか...
> >> --> 英語のままのほうがカッコイイ!!
> >無理に訳すと「最良の実践」かなぁ。。。
> #意訳して「成功事例」辺りが一番近いとは思いますが,
> #ニュアンスが異なるのであまり良くない.
>
> >でも、ほとんどカタカナ語として定着しています。
> #ですね.
今思いましたが、「最善策」なんてのもアリですかね。
----------------------------------------
(株)PFU ソフトプロダクト事業部第二開発部
福嶋 航 w.fukushima@xxxxxxxxxxxxxxx