2013-01-01から1年間の記事一覧

C# でジェネリックスを使用したシングルトンパターンを実装する

SingletonパターンとGenericsを組み合わせて使うと面白いことができたりします。 static属性メンバの挙動とSingletonパターン まずは、static属性メンバの挙動のおさらいから。 static属性が付与されたメンバはインスタンスではなくクラス自身に属するため、…

C# で Gecko ベースのブラウザを作成する

C# で Gecko レタリングエンジンベースのブラウザを作るためのライブラリには、GeckoFx があります。 GeckoFx を Google で検索すると、開発初期に使用されていた Google Code でのページが上位に表示されるため、開発が止まっているように見えてしまいます…

C# で Webkit ベースのブラウザを作成する

C# で Webkit レタリングエンジンベースのブラウザを作るためのライブラリとして、Open-Webkit-Sharp や WebKit.NET などがあります。Open-Webkit-Sharp の方が Webkit.NET よりも新しく、Webkit.NETをベースにして開発されたものですので、こちらを使用しま…

非同期処理でUIスレッドを操作する方法

非同期処理でUIスレッドを操作するやり方について、ボタン button1 とテキストボックス textbox1 のコントロールが配置された Form で、button1 のクリックする(button1_Click)と、並列処理した結果を非同期的に textbox1 へ表示するいくつかのソースコー…

C# のクロージャと部分適用とカリー化

C# でクロージャや部分適用やカリー化を使いこなすためのメモ。 クロージャ 英語のスペルでは「closure」、日本語で言い直すと「閉包」。 クロージャの特徴を掻い摘んで書くと、ローカル変数等をキャプチャーしたレキシカル変数を持ち、その値を操作・参照す…