«前の日記(2006-01-10) 最新 次の日記(2006-01-12)» 編集

Matzにっき

迷惑メール対策なら Dr.WEB
『Dr.WEB メールデーモン』、MTA 用迷惑メール対策製品です!


2006-01-11 [長年日記]

_ [原稿] 日経Linux 3月号

ネタは「コードジェネレーション」。参考文献は 『Code Generation in Action』 by Jack Herrington。

しかし、コードジェネレーションっていうテクニックは 対象言語がRubyのような動的言語であればそれほど必要になることはない。 メタプログラミング機能を使った方が便利だし手軽だからだ。

Railsの用にコードジェネレーションとメタプログラミングの両方を活用するケースもあるけど。

で、今回はJavaのためのコードジェネレーションをRubyで行うという 話の流れにしようと思っているのだが、 いかんせん私のJavaの経験がほとんどないので 悩ましい。対象言語をCとかにしたいところではあるのだが、 Cにはマクロがあるのでけっこうカバーできちゃうしね。

苦手なテーマを選ぶと書くのに苦労する。 先週末は具合が悪かったから、なかなか進まなかったし。

本日のツッコミ(全2件) [ツッコミを入れる]
_ kwatch (2006-01-16 16:33)

私はJavaのテストプログラムを書くのにRubyを使っています。YAMLでテストデータを書き、eRubyのテンプレートを通すとJUnitのテストプログラムができる寸法です。Javaはヒアドキュメントがないので、こうでもしないとやってられません。あとは、1.5より前のJavaにはenumがなかったので、enumに相当するコードを生成するスクリプトをRubyで作ってました。

_ まつもと (2006-01-16 16:48)

kwatchさんのような人が増えるのが、今回の記事の目的です。<br>役に立つとよいのですが。<br><br>実物が出まわるのは1ヶ月後です。

お名前:
E-mail:
コメント:
[]

«前の日記(2006-01-10) 最新 次の日記(2006-01-12)» 編集

RSS feed meter for http://www.rubyist.net/~matz/ track feed Matzにっき Creative Commons License This work is licensed under a Creative Commons License.