プログラミング

Luaスクリプティングのジレンマ

最近「コードが書きやすい故に書き続けていると効率が落ちていきやがて破綻する」という書きやすいプログラミング言語のジレンマというものを感じている。しばらくLuaでプログラミングをやっている。ソースコードも十分な量になってきた。 しかし、5000行を…

IUPを使ってみた

GUI GUIをどうやって用意するか、というのはリッチなIDEを持たない環境で開発する場合において永遠のテーマのように思える。僕はずっとDelphiでやってきて基本的にはDelphiが気に入っているが、それを除くと今のところいい解決手段は見つけられていない。Vis…

Hello Lua

そうだ、スクリプトを使おう、と思い立ちました。まず思いついたのは今流行りのRubyでしたが、 組み込んで使うとなるとライセンス的にどうなのかな、 という感じがしたので、Luaを検討しました。 ポイント 組み込みやすい LuaComを使えば、COMも使える 無名…

DelphiやC++ Builderでロールオーバー時の画像を指定したボタンを使いたい

HTMLやFlashで簡単に出来ることが、Windows GUIではデフォルトでは出来ない、 と嘆いていたのが解消されました。 TImgBtn ロールオーバー時の画像の指定などが出来る、とてもシンプルなボタンです。GIF画像を扱いたいときは、TGifImage v 2.2を組み合わせる…

Windows Formsアプリケーションを最適化するための資料(1)

Optimizing Your Application How To Build A Pig Of An Applicationが面白い*1。 特にスレッドプールを使わずにたくさんスレッドを使う たくさんの配列を割り当てて、ガベージコレクタにそれらをクリーンアップさせる 関数呼び出しの引数に値をたくさん持っ…

XPathと名前空間

どうせならSOAPで、とWebサービスプログラミングの実験をしていたら、 C#+.NETでXPathと名前空間で大いにはまったので、それに関連するメモを残しておく。例えば、.NETでWebサービスを作ると以下のようなXMLが取得できる。

Make Flash Movie using Visual Studio.NET 2003

FlashムービーをC#でコーディングできるみたいです。 NeoSwiff GUIのデザイナがないのがつらいのですが、 .NET Windowsアプリケーションのコードがほぼそのまま使い回せる、 というのには驚きました。 Button Label TextBox ListBox RadioButton CheckBox Pa…

最適化にハマりたい

パフォーマンス、信じられるのは自分だけ - 井上で紹介されていたmod_perl における C10K Problemが面白いです。 C10K Problemとは何か?というのは竹迫さんの資料に書いてあるのですが、Googleで調べてみるとgoogle:C10K Problem、171件しか見つかりません…

JavaScriptからFlashの変数を操作するSetVariable関数について

http://www.iburiworks.com/weblog/002253.htmlJavaScriptからFlashの変数(ActionScriptの変数?)を操作するために、 FlashオブジェクトにはSetVariable関数が用意されています。 確か、ドットシンタクスが使えます。思い出したので、書いておきます。

AESでの暗号化の負荷を調べよう(1)

AESを知る AESとは何なのかを調べてみました。*1 http://e-words.jp/w/AES.html http://ja.wikipedia.org/wiki/AES%E6%9A%97%E5%8F%B7 共通鍵暗号 DESに代わる技術とされる 128ビットのブロック長を持つ 鍵の長さは128,192,256ビット AESの負荷について調べ…

Cでデザインパターン

最近友人と会話していて、 「ぼくがすごいと思ったアプリはほとんどCで書かれている」 「どれくらい違うの?」 と聞かれて、そういえば詳しく調べたことがなかったな、と思った。 また、以下のことを思い出した。 http://satoshi.blogs.com/life/2005/06/aja…

プログラムの高速化手法を再度学習する

「プログラムの高速化の指針をお持ちですか」 「プログラムの高速化で参考になる情報をお持ちですか」 と聞かれたらどうしよう。ぱっと思いつくのは、日本でDELPHIの時代を切り開いた一人である 黒田Dycoonさんのページ「プログラムの技」です。最初に見たの…

AntでVisual Studio関係のファイルをバックアップする

同じディレクトリに、batファイルを用意して ant zip としておけば、batファイルをダブルクリックでzipファイルができあがります。

DevPartner Profiler Community Editionは性能分析に大いに役立った

結果 C#とC++とDelphiが混在するとあるプログラムがあったのですが、それの性能分析および性能改善に大いに役立ちました。CPU負荷が常に100%前後だったプログラムを、80%前後に落とすことが出来ました。 Dev Partner Profiler Community Editionで分かるこ…

インサイド Microsoft Windows 第4版 上

買ってしまいました。id:softetherさんがhttp://d.hatena.ne.jp/softether/20050809で書いていた内容を見て欲しくなってしまったからです。僕が知りたかったのは、スレッドの切り替えがどのように行われるのか、ということでした。 本では第6章の内容に当た…

極座標を使う方法のメモ

http://d.hatena.ne.jp/kenmo/20050817ぼくの頭の中では、「極座標といえばテクスチャマッピング」なんですが、これは「極座標系で移動量を表現する」というお話。2Dアクションゲームを作っていましたが、こういう使い方を全く考えていなかったので、新鮮さ…

クロージャを学ぶ

Ajaxを使った日本語 Full IME http://chasen.org/~taku/software/ajax/fullime/を見て「クロージャ」というキーワードが気になりました。 ということで、どういうものなのかを調べてみました。Flashでクロージャ。-torus solutions! http://www.torus.jp/mem…

砂と大量のパーティクルの当たり判定

TOBYさんが刺激的な物理シミュレーションをやってらっしゃる。当たり判定が重い、ということでお悩みの様子。どういう風に動いているのかが気になる。ふと、「砂」を思い出した。 砂のページ*1 こういうのってどうやってるんだろう?反発をどうやって実装す…

BeginInvokeとスレッドの切り替え

そうか、C#のBeginInvokeの第一引数であるSystem.Delegateというやつは、メソッドオブジェクトなのか。

引数オブジェクト

リファクタリングを実践中。引数が多くなってきたので、引数オブジェクトを導入する。メソッド、クラスも出来るだけ分割して、個々が一つの目的から構成されるようにする。メソッドやクラスに対して、適切な名前が付けられないときは、自分がその目的を特定…

モジュール分割

オブジェクト指向の再定義[7] - EoTとユニットテスト http://www.objectclub.jp/technicaldoc/object-orientation/OO_redefine/redefine07「テストを基点としてモジュール分割を考える」とあった。 なるほど、単体テストが出来ない、ということはモジュール…