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

ExcelのRTDサーバーを、VC++で書いてみた。

12/30追記:interface IControllerのidl定義が抜けていたのを追加。ref: ExcelのRTD用DCOMサーバの作り方 - しがないプログラマ の日記 昔にVBででっち上げたCOMサーバーを、VC++で書き換えてみようと思い立ち挑戦してみました。この辺りの情報は、英語では…

VC++のATLを使って、COMを書くときのTips

COMのプログラムをする際に、一番問題になるのが BSTRを使った文字列の処理です*1。一つ扱いを間違えるとすぐにメモリーリークを引き起こす原因にもなるため、細心の注意が必要です。 基本的には、[in] BSTR、[out] BSTR*、と受け取る際には BSTR型で、値を…

boost の Unit Test Framework を使ってみた。

C++

日本語の情報が少なくて、色々とはまったのでメモ。 使用したバージョンは 1.40です。たぶん、1.37以降では使えると思います。環境はWindowsなので、Visual Studio 2008を使用しています。 インストール http://www.boostpro.com/download からインストーラ…

GAEでカウンター

GAEを使い始めたのですが、いわゆるBigTableは未体験だったのでカウンターを試しに作ってみました。 db.Modelを継承した単純なデータモデルを作成し、HTTPのリクエストに対してカウンターの値を返します。データの中には更新時刻も入っていて、更新処理はト…

pythonでunittestをするには

Python2.1以降のバージョンでは、標準でPyUnitというUnitTestのフレームワークがあるので、それを使うことにします。使い方は簡単で、最初にテスト対象のクラスに対して、〜_test.pyファイルを作成します。そこで unittestモジュールをimportして、unittest.…

GAEで、ぷよぷよ7の得点計算WebAPIを公開しました。

http://puyo-sim.appspot.com/score/ http://puyo-sim.appspot.com/ にある、シミュレータと同じ引数を渡すと得点計算の結果をJSONかxmlで返します。 Web API を作ってみたかったの習作です。レスポンスには最低限の情報しか含まれていませんが、各連鎖中の…

PythonでEnumを書いてみた。

とても車輪の再発明な気もしますが、勉強の意味の含めて自分で実装してみました。と、言っても大したものではないですけど。Enumと言っても C言語的なものではなく、JavaでのEnumを意識してます。Enumクラスの実装はこんな感じ。

0x20歳になりました。

なんだか、1年がどんどん早くなっていってる気がしますね。 全然ブログ書いてませんが、ぼちぼち続けていきたいです。

ぷよぷよ7 れんしゅうノート シミュレータを、Google App Engineに置いてみました。

URLは http://puyo-sim.appspot.com/ になります。 今のところは、静的なコンテンツしかないのでGAEな意味はあまりないのですが、自宅鯖で動かしているよりは永続性を考えるといいかな?と言うことで置いてみました。これからの予定としては、Flash自体はほ…

ぷよぷよ7 れんしゅうノート シミュレータ、ゲームとキャラクターを選択できるようになりました。

http://taoe.jpn.ch:8080/puyo7/?%E3%82%8A%E3%81%82%E3%81%BB%E3%81%BB%E3%81%97%E3%81%A8%E3%81%B5%E3%82%8A%E3%81%B5%E3%82%89%E3%81%93%E3%81%A8%E3%81%95%E3%81%B8%E3%81%AA%E3%81%A4%E3%82%89%E3%81%A8%E3%81%95%E3%81%B8%E3%81%BE%E3%81%95%E3%81%B8%…

対戦ブロックス のメンテナンスを行いました。

対戦ブロックス久しぶりに自分で遊んでみようと思ったら、「サーバが起動しない」し、「ローカルモードも動かない」状態になってしまっていたのでメンテナンスしました>< 今まで訪れていただいた方には申し訳ないことをしてしまいました。 しばらくサーバ…

ぷよぷよ7 れんしゅうノート シミュレータ に連鎖シミュレータ機能を追加しました。

http://taoe.jpn.ch:8080/puyo7/ れんしゅうノートシミュレータのバージョンアップをしました。連鎖する様子がアニメーションで見られるようになりました。当然、点数計算をして予告ぷよを表示できます。良かったら試してみてください。TODO:連鎖倍率はキャ…

ぷよぷよ7 れんしゅうノート シミュレータをバージョンアップしたので、連鎖パターンのURLを紹介。

URLとパスワードが連動する機能を追加しました。これでリンクを張るだけで、自作の連鎖パターンの紹介できます。例として、基本連鎖 - 石川をぷよぷよで染める会 の連鎖集を元に作ってみました。階段(3-1積み)階段(2-2積み)階段(1-3積み)挟み(2-1-1カギ積み)…

サマーウォーズ観てきた!

今日、ようやく『サマーウォーズ』を観てきました。2006年の時かけも良かったので、期待していたのですが、期待以上に楽しい2時間でした。 オープニング前の OZの紹介シーンは公式サイトでも見れるので試しに見てみてください。とても続きが気になるのと思う…

ぷよぷよ7 れんしゅうノート シミュレータ作ってみた!

ActionScript3を勉強していたので、習作として作ってみました。ぷよぷよ7のがっこうモードの中にあるれんしゅうノートを、DSのインターフェイスでなくFlashでマウスを使って入力できるようにしてみました。もちろんパスワードは相互互換ですので、作成した…

Flex向けのフリーなIDE、FlashDevelopを試してみました。

無料でFlashの制作環境を構築 FlashDevelopとFlex SDKのインストール | ClockMaker Blog を参考にインストールしてみました。ただし、このままの設定ではデバック用の trace文が出力されなかったため、そこを直したりしてみました。 以下、自分の行ったイン…

日本で日蝕がみれました。

今日は待ちに待った日蝕の日だったのですが、あいにくの天気で肉眼ではほとんど見ることができませんでした。それでも、貴重な雲の合間から太陽が顔を出したところをなんとか携帯で撮ることができました。11時くらい@東京 の写真なので、ほぼ三日月くらいに…

↓の文を読み、誰が魚を飼っているかを当てて下さい

http://d.hatena.ne.jp/kmizushima/20090629/1246212207 を見て、自分も解いてみたくなったので、rubyのリハビリも兼ねて挑戦してみました。問題は以下の通り。 それぞれ異なる色の、5つの建物が並んでいます。 それらの家にはそれぞれ出身地の異なる家主が…

色々な言語を実行可能なEditor

http://d.hatena.ne.jp/Horiuchi_H/20090613/1244875956:昨日のが思いがけずアクセスが増えていたので、自分の環境で動かせるのが perl,ruby,pythonとあったのでその3つを実行できるようにしてみました。昨日のソースではblogに書きやすく1ファイルに全部書…

Perlを編集しながら評価できるEditor

http://twitter.com/monjudoh/status/2038844182 この発言に触発されて、あると便利だよなぁと作ってみました。とりあえずなので、上のペインで Ctrl+Enterを押すと書いてあるコードが Perlでevalされて下のペインに表示されます。選択している場合には選択…

ADO.NET2.0 を使って、PostgreSQLからデータを取得する

C#

まず、前提として ADO.NET2.0の標準のドライバは SQL ServerかOracleか、もしくはODBCしか使えません。しかし、Npgsql.Netを使えば ODBC経由ではなく PostgreSQLに接続することができます。以降では、Npgsqlがインストールしてある前提で話をするので、こち…

6ニムトのゲームを作成中

ある人の希望で、6ニムトをネットで対戦したいと言うことで作成中です。 とりあえず、rubyで書いてます。StarRubyを使ってGUIを作ろうかと思ってますが、とりあえずルールを実装したのでCUI版のシングルゲームを公開してみます。 とても適当なので、要望など…

ORM比較(6) - iBATIS

iBATISは、XMLにSQLを記述しJavaのBeanに対して自動的に値を設定するORマッピングになっています。どんなSQLになるかは分かりやすいですが、XMLとJavaとの同期を取る方法は特には用意されていないので、管理が必要になります。また、このプロジェクトもApach…

今までどのくらいプログラミング言語を触ってきたか

PG

今までどのくらいプログラミング言語を触ってきたか(3秒で飽きたものも含む) | スラド デベロッパー が流行っているようなので、自分も時系列順に書いてみます。 N80-BASIC (小学生自体に、父の PC-8001MkIIがあったので) Pascal (大学の授業でちょっとや…

ORM比較(5) - S2JDBC

S2JDBCは、SeasarプロジェクトのS2Containerにextensionとして標準で付属してるORマッピングです。DIコンテナにSeasar2を使う場合には、ORマッピングとして一番最初に使用候補に挙がることになると思います。ただし、JPAのアノテーションにはほぼ対応してい…

ORM比較(4) - OpenJPA

このOpenJPAは、名前の通りJPA準拠のJacartaプロジェクト産ORMです。JPA対応なので、使い方は前々回(ORM比較(2) - Hibernate - しがないプログラマ の日記) のJPA版と同じになります。 公式ページは http://openjpa.apache.org/ になります。動かすために必…

ORM比較(3) - EclipseLink

ちょっと前にJPA2.0の参照実装に決まった、EclipseLink(元『TopLink Essentials』)です。名前の通り、Eclipseプロジェクトのサブプロジェクトになっています。これから有名になりそうなライブラリですね。 プロジェクトの公式ページは http://www.eclipse.or…

ORM比較(2) - Hibernate

JavaのORMと言えば、Hibernateと言われるくらい有名なライブラリです。HibernateはJ2EEの標準APIであるJPAに対応しているので、Hibernateをそのまま使う場合とJPA互換の使い方と2通りのデータ取得方法で書いてみます。 公式ページは https://www.hibernate.o…

ORM比較(1) - ActiveObjects

ActiveObjectsは、Ruby on Railsの ActiveRecordの考え方を元にしていて、XMLを使わずに全てJavaで記述できるORMです。CoCを重視するので、テーブル構造などは基本的に ActiveRecordと同じようにキー項目は id固定で、ORMのユーザ側からは操作しない前提にな…

ORマッピングの比較

JavaのORMライブラリの使い勝手の比較をしてみました。と言っても、とりあえずSelectとInsertするだけのものです。導入を考えた時の最初の設定がどの程度違うのかを比較するためのものです。 比較対象は、以下の5つになっています。 ActiveObjects Hibernat…