- 63 名前:デフォルトの名無しさん mailto:sage [2012/03/11(日) 10:24:33.25 ]
- >>47
ブロックは確かにSmalltalkでもオブジェクトとして有るんだけど、一般的なオブジェクト指向言語には無いのがなぁ・・・ 結局、再利用性を高めるためには継承・隠蔽・多態性よりも、関数を値として渡すという関数型言語的な処理の方が有用なんじゃなかろうか 実際、C++やJavaで再利用性に欠かせないテンプレート(ジェネリック)は、オブジェクト指向とは無関係で、どちらかと言うと関数型言語の型推論に近い(これも関数型言語とは無関係と言われればそれまでだが) そう考えると、型推論的なものと、関数を値として扱える機能が、再利用性向上に寄与してるとも言える オブジェクト指向の多態性に当たるオーバーライド、オーバーロードはテンプレート(ジェネリック)を使ってなるべく利用しない方向に向かってるのが何よりの証拠とは言えないだろうか そう考えると、型を意識するオブジェクト指向と関数型のそれぞれの言語を持ち出した方が、より生産性に有用な機能がどれかを浮き彫りにしてくれそうな気がする
|

|