CFMLでデザインパターン実装(2.Builder)

新しい言語は。。。やっぱPythonか?と言いつつ溜まっていたネタを。

今回はBuilderの実装をしてみました。実は今回はcfinterfaceの使い道を考えるというテーマがあったので、前回よりじっくりやってみました。が。。。はてさて、やはり微妙でした。

続きを読む

CFMLでデザインパターン実装(2)まとめ

cfinterfaceを使う意味は、やっぱり微妙でしたよ。
以前書いたようにColdfusionではソースコードを書いている際にコンパイル・エラーを出すというチェック機能がないのと、パラメータの型指定が省略可能であるせいで、インターフェイスを定義するメリットが大きく落ちています。

01:<cfcomponent output="false">
02:
03:	<cffunction name="Director" access="public" returntype="void">
04:		<cfargument name="builder" type="cftest.gof.builder.Builder" required="true"/>

その為、このcf-3:Directorの4行目を

04:		<cfargument name="builder" type="any" required="true"/>

とか、

04:		<cfargument name="builder" required="true"/>

としても動いてしまいます。じゃ、ダック・タイピングな実装にしても同じじゃないか、と。

動的型付け(というか、恐らく正体はjava.lang.Object)な開発環境を作っているのに何故?という気持ちでいっぱいです。本当にありが(ry

一転、ココロが折れるメソッド発動。

家に帰ってさぼてん特製木工ボンドで付けました。
けど、まだちょっと曲がってる。

昨晩書いたエントリですが、私の頭の中がどうなっているのか何となく分かりましたよ、えぇ。

なんか、変な不満が鬱屈してるっぽい。
「スーツの中の人」とプログラマ・エンジニアの対立を煽っている奴は誰だ?みたいな事を書いておきながら、結局ぐだぐだな論調はお互いがお互いを(ry的な。で読み返してみると、「もしかして対立を煽っている奴らの中に、自分自身も含めなきゃ駄目なんじゃない?」みたいな。もう駄目だ、ぜんぜんだ。

お酒を飲んだ日にエントリするのはほんと控えよう。せめてポジティブなテーマの時だけにしよう。


本当はまた、もう一度あのテーマにはトライしてみたいんですけど、ばっちり心が折れたので別の事に目を向けて気分転換でもしようかな、と逃避メソッドも発動したりして。なんか新しい言語でも勉強してみようかな。