cfinterface

CFMLでデザインパターン実装(1.AbstractFactory)の続きとして、2.Builderを考えておったのですが、はたと疑問に。

cfinterfaceって、これいったいどう使うべきなんでしょう?Coldfusionはスクリプティング言語なので、事前コンパイルは走らないです。なので、Javaのようなインターフェイスを定義できたとしても、得られるメリットが無いんじゃないだろうか、という気がしてならないです。


個人的にJavaの場合、インターフェイスはクラスのI/O仕様を別途定義するだけじゃなく、実装時にコンパイル・エラーを誘発する一種の制約として働いてくれるので、割と有用だと思っています。でも、事前にコンパイル・エラーを出す訳でもない言語で、しかも動的型付け(風な)言語で、インターフェイスを定義する必然性があるんだろうか?と非常に悩んでおります。ダックタイピングでいけない理由は何か?というか、I/O仕様を実装時に利用できないなら、それがプログラミング言語で書かれている必然性がどんだけあるのか?とか。


2.Builder実装編を近々エントリに書きますので、その時検証してみたいですね。