かずきのBlog@hatena

すきな言語は C# + XAML の組み合わせ。Azure Functions も好き。最近は Go 言語勉強中。日本マイクロソフトで働いていますが、ここに書いていることは個人的なメモなので会社の公式見解ではありません。

2006-12-16から1日間の記事一覧

evalでクラス定義

たとえば、nameっていうプロパティを持ったクラスをいっぱい定義したいとすると… def define_class *args args.each do |name| eval <<-E class #{name} attr_accessor :name end E end endこんなメソッドを用意しておいて define_class( "Person", "Departm…

Visual Web Packで動的にコントロールを追加

ボタンを押すとグループパネルにボタンをガシガシ追加していくようなものを作る! ついでなので、動的に追加したボタンをクリックしたときに呼ばれるメソッドの関連付けの仕方も盛り込んでみた。 まず、デザイナで以下のような画面を作る。コントロールのID…

委譲してみよう

sendとmethod_missingをつかって委譲(丸投げ)するクラスを作ってみた。 Adapterパターンとかが簡単に出来そうだ。丸投げクラス class Marunage def initialize(target, map = {}) @target = target @map = map end def method_missing(method, *args, &blo…