- 265 名前:デフォルトの名無しさん mailto:sage [2015/12/19(土) 13:21:35.87 ID:dNXWfsX0.net]
- >>212のような機能は動的型言語が静的型言語から輸入した機能だから静的型の機能なわけだけど
動的型界隈においても静的型のメリットが評価されてきたってことでもあるが それはともかくとして、>>212のような書き方をするとfuncはstrと派生クラスしか受け付けなくなるから 動的型の柔軟性が全く損なわれるわけだけどね 動的型言語なのにメタプログラミングもクソもないC言語レベルのコーディングを強いられるのはなんとも 一方で静的型言語で>>211のような型を指定しない書き方をするときは ジェネリックやテンプレートを使うわけだけど、この場合コード補完こそ効かないけれど 静的に解決するので少なくとも型のミスやtypoのミスはコンパイルエラーになる 静的型言語のタイプセーフはジェネリックでも健在ということ これは動的型言語の取ってつけたような貧弱な静的型システムでは実現できていない しかし静的型のジェネリックは静的に解決するので動的なダックタイピングは出来ない でも、動的なダックタイピングのような危険な行為は本当に必要なのかどうなのか 殆どの場合は静的なダックタイピングだけで十分だし、コンパイルエラーで検出できたほうが良い 動的な多態をしたければ、インターフェースを介して行ったほうが安全
|

|