From: Hideaki Takata Date: 1999-11-13T18:14:31+09:00 Subject: [ruby-list:18568] Re: 変数の型チェック 高田です。 > ぼくなりの考え方を。お目汚し。 > > UMLは基本的に静的型の言語だと思います。ですから、UMLで設計すれば、 > こういう問題は出て来ないと思います。 申し訳ありませんが、ちょっと良く分かりません。UMLって、型のあるなしなど言語 の実装にはあまり関係ない部分の設計に使う気がします。 実際に、僕が型について問題にせざるを得ないと思ったのは、例えば、Hashにたくさ んStringを入れておいて、必要なときにそれを取り出そうとしていたとしてHash[k] とかみたいなメソッドは、kがkeyに含まれていたら、Stringを返しますが、そうでな ければ、Nilを返しますから、必ずしもStringを返しているとは限りません。しか し、探しているStringがほぼ間違いなく、Hashに含まれていて、返り値は要素に含ま れたStringであるはずという思い込みがあれば、それを忘れて、その返り値を別の (Stringに対しての処理を前提にしている)メソッドに渡してしまう様なミスは、時々 あるように感じます。 要するに、例外的なケースに対しての処理を忘れているだけなのですが、こういうば かばかしいミスがその瞬間には分からず、だいぶ後になって発覚することは、僕のよ うな粗忽な野郎でなくても起こるような気がします。 変数の型が想定している型と違っているのにそれに気がつくのが遅れることがある、 という問題を避けるためにはUMLで設計したということだけでは、不十分だと思うの ですが。 *** Hideaki Takata Profile *** e-mail private : hideakit@d3.dion.ne.jp univ : u0601043@ue.ipc.hiroshima-u.ac.jp URL : http://www.jws.sis.co.jp/~alife