- - PR -
C# パラメータの型が異なるメソッドを格納する方法
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2007-05-07 22:25
私も、コマンドパターン(か Memento パターン)だと思います。
undo/redo の実装と似ているのではないでしょうか。
リフレクションは、ふつうのアプリケーションを作る際には、めったなことで使うものではないと思います。 -- unibon {B73D0144-CD2A-11DA-8E06-0050DA15BC86} | ||||
|
投稿日時: 2007-05-10 11:50
ご回答ありがとうございます。
説明が下手ですみませんでした。 例えば蓄積されたデータを決められた手順で整形して帳票印刷したい場合 を想定します。毎回データの内容が異なるので描画指示の回数も命令の種 類も変化します。ただし、整形する手順は決められていますから、印刷を 開始する時点で必要な情報は全て揃っています。 このような場合、イメージファイルを作成しておいて逐次実行する方法、 あるいは、同様のことをメモリ上のstring[]で実現するというアイデアは 良い解決策だと感じました。 > 次のようなイメージのファイルにしてはどうでしょうか? > DrawString,abc,FontA,Brush1,0,0 > DrawImage,Filename.bmp,10,20 > DrawLine,Pen1,15,15,20,20 結局、シグネチャが異なるメソッドを統一的に扱おうとすると Reflectionを使うか、string等に置き換えて逐次解釈するしか 仕方が無いのでしょうか。 やはり、妙案はなさそうですね。 | ||||
|
投稿日時: 2007-05-10 12:00
DrawString, DrawImage, DrawLine それぞれのクラスを作って、 テンプレートパターンで実装すればいけそうな感じがします。 _________________ かるあ のメモ と スニペット | ||||
|
投稿日時: 2007-05-10 12:40
帳票データは、どんな感じで格納されてます?
csv? xml? DB? その他? どの辺りで、不満を感じているのでしょうか? 文字列配列に入れるのがやだったら、こんなのもありかも。
|