Object Poolの必要性 今回はObject Poolパターンについて説明します。Object Poolは、オブジェクトの生成に関するパターンでオブジェクトの数を制限して再利用したい場合に利用するパターンになります。このパターンを利用するケースとして、オブジェクトの生成にコストがかかる場合や、オブジェクトをある数だけ用意して並行処理を行うような場合が考えられます。具体的には、データベースのコネクションやEJBオブジェクトなどにオブジェクトプールが利用されています。 データベースへのアクセスでは、コネクションの確立にコスト(時間)がかかります。そのため、コネクションプールを使って、データベース接続のコストを下げ、接続を再利用しています。Webシステムでは、図1のようにマルチスレッドで動作しているサーブレットから呼び出される処理(Business Logic)の中で、コネクションを取得し
#3です。 自信なし。 --- (たぶん)最重要な側面(のうちの1つ)を書き忘れてました。 前述の「CollectionとIterator」の例で言うと、 sunのJDKについてくる「標準クラスライブラリとしてのCollection」は、 Vectorだったり、LinkedListだったり、 その他いろいろ、 いくつか「すでに存在」していると思うのですが、 ここで、「sunの標準ライブラリに存在しない、 自分オリジナルのCollection、MySupecialListというのを作りたい!」 と思ったとします。さらに 「このMySupecialListに合うIteratorは、 既存のsun標準ライブラリのIteratorの中には見当たらず、 これも自作するほかないんだよな~」 というケース。 いわば、 『"プラグインな"Collectionを使う時』 です。 このケースでは、 自作者は単
UMLで表した Proxy パターン Proxy パターンは、プログラミングにおけるデザインパターンの一種。Proxy(プロキシ、代理人)とは、大まかに言えば、別物のインタフェースとして機能するクラスである。その「別物」は何でもよく、ネットワーク接続だったり、メモリ上の大きなオブジェクトだったり、複製がコスト高あるいは不可能な何らかのリソースなどである。 Proxy パターンのよく知られている例として、参照カウント付きポインタオブジェクトがある。 複雑なオブジェクトの複数のコピーが必須となる状況では、Proxy パターンに Flyweight パターンを加えることでメモリ使用量を抑えることができる。通常、複雑なオブジェクトのインスタンスは1つだけ生成し、プロキシオブジェクトを複数生成する。それらプロキシオブジェクトは唯一の複雑なオブジェクトへの参照を含む。プロキシへの操作は、オリジナルのオ
こんなのを読み込んで適当な処理を施して欲しい、と。Excelのシートから各セルの値を拾い出すのはさほどに難しくはないのですが、いかんせん時間がなかったのでいったんはお断りしたところ、「Excelシートを直接読むのが面倒ならCSVからでもかまわん」とのこと。CSVならフツーにテキストファイルを読めばいいから小一時間で作れそう、昼メシ奢ってもらうのを報酬に引き受けることにしました。 CSVのフォーマット CSV(Comma Separated Values)はMS-DOSあるいはその以前からスプレッドシートのデータ・フォーマットとして使われています。CSVの規格/標準としてはRFC4180がありますが、こいつは2005年に作られたものでそれ以前のアプリケーションがRFC4180に準拠していることは期待できるはずもありません。とはいえ、まずはRFC4180に従って作られたCSVなら正しく読めるこ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く