contents

  1. PostgreSQL
  2. Windows
  3. C++
  4. XML+XSLT

Develop

プログラミング関係の雑記。

PostgreSQL

psql.js
psql の SQL 入力補完機能を JavaScript へ移植してみました。
テーブルサイズ計算機
PostgreSQLのテーブル定義から必要なディスク容量を計算します。
Japanese Text Search for 8.3
バージョン8.3で追加されたテキスト検索のための日本語パーサです。 mecab による形態素解析ベースのテキスト検索を行います。

Windows

GDI+

GDI+の導入
GDI+の導入とイメージの読み書きについて。
GDI/GDI+のビットマップ転送能力
GDI/GDI+で転送速度を計測しました。GDI+は本当に遅いのか?
GDI+ with Direct3D9
GetDC()よりもGDI+を使ったほうが楽です。

Win32SDK

ImageListでスプライト
思ったよりも知られていない、ImageListについて。
DLLについてあれこれ
STLとDLLの相性問題、リソースDLLの利用について。
解像度の切り替えとフルスクリーン
GDIベースで使用する画面モード切替ルーチン。

ATL (Active Template Library) & WTL (Windows Template Library)

[Link] WTL (sourceforge)
WTL 8.0 で Windows Vista と Visual Studio 2005 に対応されました。
いまところリンクだけ
MFCと比べてコンパクト。それでいて引けを取らないフレームワーク。
ATLのクラスを使ってみる
ヘッダだけで使えそうな、便利そうなユーティリティクラス。
Yet Another CComObject
テンプレートによるCOMオブジェクト実装ライブラリ。
Tablet: タブフレームワーク(未完成&バグだらけ&開発中断)
Avesta の前身として作っていたアプリケーションの残骸です。 「タブフレームワーク」+「ドキュメントプロバイダ」という柔軟な構成を目指していましたが、設計的にも実装的にも破綻したので、開発を中断しました。 わりと素直に WTL を使っているので、参考程度にご覧ください。 (どうせ読むなら Donut のソースのほうが良いですが……。)
  • bin+src … アプリ終了時に必ずエラー終了します!!! たぶん XP+VC7.x 必須。
  • screenshot

C++

STL+ : テンプレート系ライブラリ

STLport の VC++への導入
VC.NETになって付属STLもかなりマシにはなりましたが。
Boost C++ Libraries についての雑記
C++をフル活用したコンポーネントライブラリ。
[Link] Loki
Modern C++ Design をきっかけにC++は変わったのです。
[Link] TTL (the Tiny Template Library)
「正しい」コンパイラ限定の lightweight-boost。

SDL (Simple DirectMedia Layer)

SDLとは〜インストール〜プロジェクト作成
VC++への導入法。
[Zip] SDL+OpenAL.zip
SDLとOpenALを組み合わせてみただけ。

XML+XSLT

MSXML

C++での簡単なDOMの例
DOMを使って再帰的に探索する例。
SAXを使ってリソースを読み込む
SAX2を利用して、XMLからメニューとアクセラレータを読み込むライブラリ。
SAXWriter
単純なXML出力機構。

その他

XSLT と SSI を同時に使う
xsl:commentが解決手段になるでしょう。
XSLTによる偽TeX
XSLサンプルXML変換後のHTML。 章番号、目次、図表、参考文献、著者、アブストまで。
using xsl:number, xsl:apply-template@mode, generate-id()
[Zip] Xerces SAXを利用して外部XMLから階層化された構造を作成する例
汎用的なAbstructFactoryってこんな感じ?