N2 ToolBox(跡地)

跡地です。引っ越しました。http://d.hatena.ne.jp/nosen

Windows版Safari

2008-05-12 06:10:37 | その他
最近Apple好きなので、Windows版Safari 3.1をインストールしてみました。
ベータ版のころは日本語が表示できなかったりとかで、全く使い物にならなかったですが、
正式版は、初見の感想としては、非常にスバラシイ出来栄えです。

ページのレンダリングが速いです。
検索が超おされです。
SnapBackというのを使うと検索結果に一撃でもどれます。

使い込んでいくといろいろ問題を発見するのかもしれませんが、しばらくデフォルトのブラウザとして使い込んでみます。

S2JDBCをいじる

2008-05-04 11:50:05 | オープンソース
少々思うところあって、S2JDBCをいじってみました。

これは、非常に良く出来たものです。

APIは直感的でわかりやすく、マニュアルがなくてもIDEのコード補完の力でそれこそ流れるようにプログラミングができます。
機能的にもシンプルで、多分あまり裏で余計なことをしていないので、プロジェクトに合わせて自分なりにもう一工夫、といったことも容易にできそうです。こういう風に、ひたすらAPIの使い方を覚えるだけでなく、どう使いこなしてやろうか、ということについてイマジネーションがどんどん広がるライブラリは好きです。

機会があれば実戦投入してみたいですね。

ちなみに、ただS2JDBCを動かしてみるだけではつまらないので、S2Containerではなく、LiQ Container上で動かしてみました。Containerをセットアップするコードは以下のようなイメージになります。
----
Container container = new Container();
S2Dbcp s2dbcp = new S2Dbcp();
S2Jdbc s2jdbc = new S2Jdbc();

s2dbcp.configure(container)
     .driverClassName("org.h2.Driver")
     .url("jdbc:h2:mem:db1")
    .user("")
    .password("");
        
s2jdbc.configure(container)
    .dialect(HsqlDialect.class);
        
sentinel.configure(container);

JdbcManager jdbcManager = container.get(JdgcManager.class);
----

S2DbcpクラスとS2JdbcクラスはS2のコンポーネントをLiQから使えるようにするために自分で書いたクラスです。

S2DbcpクラスではコネクションプールとJTAに関連するコンポーネントを、
S2JdbcクラスではJdbcManagerをContainerにぶち込んでいます。

XMLで設定するのと違って、内部のコンポーネントの構造をきれいにカプセル化して、
設定可能なパラメータだけを外部に公開できるところが良いところです。

dialectの設定など、実装クラスのクラスオブジェクト自体を渡せるので、余計な間違いがおこりづらいはずです。
もちろんDbmsDialectの実装クラスでないクラスを渡そうとするとコンパイルエラーになります。

あと、コンテナの初期化が軽いのもメリットといえばメリットですね。



朝blog挫折

2008-05-02 08:24:40 | その他
私にしては続いたほうだと思いますが、約3ヶ月ほど続いた
朝Blogがとぎれてしまいました。悔しい。
めげずにまだ続けたいです。