[最新記事] [過去ログ]

11/20(Tue)

/** Access vs Oracle → 勝負になりません(^^; */ フィールド数が10ぐらいのテーブルから1レコードを取って、オブジェクトに変換するプログラムで、 10回程度同じことをやって、平均を計ってみました。 プーリング付きOracle JDBC Driver → Oracle : 8ms JDBC ODBC Bridge Driver → Access : 400ms と、50倍もの差が出てしまいました(T_T) やっぱ、Accessって遅いわぁ。 で、まあせっかくpoolmanもあるしなぁと思って、 Accessの方に、poolmanを使ってみたらびっくり! JDBC ODBC Bridge Driver + poolman → Access : 32ms 10倍以上速くなってしまいました(^^; まあ、それぞれ1回ずつしか計ってないし、テーブルも単純、プログラムも単純なので、 あんまり信憑性はないんですが、大体のパフォーマンスは分かるでしょう。 とりあえず、データベースネイティブのドライバか、 アプリケーションサーバでプーリングが使えない場合は、 poolman試す価値アリでしょう。 /** 要求定義工学 */ 要求定義というタスクには、明確に定義されたプロセスは存在しなそうなんですが、 「要求定義工学入門」は、従来成果物から語られていた要求定義を、プロセスから語る本なのだそうです。 要求定義っていうと、なにやらわけわか系の日本語が羅列されているものを思い浮かべてしまうんですが、 ビジュアルにモデル化なんて出来ないんでしょうかねぇ。 この本で言ってる、3種類の要求(機能要求、非機能要求、企業要求)のうち、 機能要求に関しては、UMLのユースケース図で表せるだろうけど。 例えば、この画面は何秒以内で応答しなければならない(パフォーマンス要求)とか、 別のプラットフォームで使えなければならない(ポータビリティ要求)とかいう、 非機能要求までは表せないだろうねぇ。 さらに言えば、企業要求については、 (ユーザ)企業自体について観察された事象を明白に記述する方法で、仕様書の中に表現されなければならない。 とかって書いてあるんですが、文章にするのすら難しそうですね(^^; う〜ん。とりあえず難しい印象は変わらないけど、 もう少し読んで見る価値は十分にありそうです。

11/19(Mon)

/** なんじゃこりゃあ!? */ http://www.atmarkit.co.jp/fdotnet/special/jsb2_exp/jsb2_exp_01.html どうやら、Javaソース → MSIL(.NETでいう中間バイトコードみたいなやつ)コンパイラらしい。 しかもこの記事の人、メーリングリストプログラム動かしてるし(^^; Microsoftもまぢですなぁ。 これ読んで、予習(?)しておいた方がいいかもね(^^; http://www.atmarkit.co.jp/fdotnet/special/dotnetframework_overview/dotnframewk_over01.html /** protectedでもpublic??? */ 同一パッケージ内ならば、protectedでもpublicかのようにアクセスできてしまうらしい。 っていうか、以前にもはまった記憶が... っていうか、それでもSCP?(^^; ためしに、Cygwin上でC++のプログラム書いてみたら、 protectedがはじかれたので、「あぁ。これと勘違いしてたのね(T_T)」 って感じ。 (tm) House Mailing List Homepage (in Japanese)を見てたら、 やっぱりこの話題が過去にもあり、 「クラス単位のアクセス制御よりも、パッケージのインタフェースを明確にして、 パッケージ単位のアクセス制御に気を使った方がいいんじゃないの?」 みたいな感じで書いてありましたが、はたしてそれでいーんだろうか??? 確かに、Managerパターンを実装する時とか、C++ならfriendキーワードがあるのになぁとか思ったりもしたけど、 メンバ変数を実質publicにするのは、なんとなく抵抗がありますねぇ。 っていうか、自分実は、C++寄りだったのか!? 実は、UMLのコンポーネント図を再考する機会かもなぁとか思ってみたり。 なんせ、今までなんのためにあるのかも分からなかったし、使ったこともなかったからね。 クラスという細かい単位だけではなく、コンポーネントというマクロ的な視点も考えなきゃねぇ。 /** 今日も人身事故 */ つーわけで、ちかぢか引っ越します。 多分、このページの更新もすろーもーになるか、しばらく止まることでしょう。 しっかし。12月末には、配置転換(or 退社?)の可能性があるのに、 なんつーバッドタイミングなんだ(>_<;

11/18(Sun)

/** 本届きましたっ! */ 木曜日夜注文で、土曜日夕方着。めっちゃ早いですね(^^) なにげに、情報系学科向けの教科書テイストを醸し出しているっぽいんですが、 もし自分が情報学科に行ってたとして、こんな本を読んでた or まじめに授業受けてた ということは無かっただろうなぁ。と思ってみたり(^^; プログラム作ったりするのは、みようみまねでなんとかなったりもするけど、 なかなか上流工程に関しては、できる人も少なそうだし、 学べる人もあんまりいなさそうだしね。 とりあえず、本からベースを学んで、あとは実践で応用っつー感じでしょうか。 なんにしても、読まなきゃあ... /** なつかしい? */ http://www.yaokin.co.jp/ っていうか、うまい棒Official Siteって??? しかも、なんでenixがサイト運営!?

11/17(Sat)

/** ある意味効率悪い...(>_<; */ Oracleのデータディクショナリを元に、 Web経由でテーブル構造を表示するツールを作ってた時に、 頭の中ではとっくにコーディングは完成しているのに、 なかなかコードが打ち終わらなかった時。 キーボードによる文字入力の次に現れる(現れた?)のは、音声でしょうが、 やっぱ、脳波を直接マシンに送りこめたらいいのにねぇ。とか思うんですが、どうでしょう?(^^; とりあえず、パソコンの前で独り言っつーのも怖いですが、 パソコンの前で、「むー(-_-)」とかやってるのも怖そうです(^^; しかも、すげぇ訓練とか必要そうだし。 宇宙旅行が流行るよりも、全然後なんだろうなぁ... /** IT不況ってなんだろう。 */ IT不況をキーワードにサーチエンジン探したら、こんなサイト出てきました。 http://www.zdnet.co.jp/enterprise/0109/10/01091089.html なんか、ITだけが問題じゃ無いっぽいですね。

11/16(Fri)

/** ようやく一週間終了♪ */ マジで疲れた...(>_<; でも、ほっとするねぇ(^^) /** バグ管理 */ うちのチームのバグ管理は、Excelベース(Macroとか微妙に使ってるやつ)で行っているんですが、 これ、なんとなく使いづらいし、Webベースとかで無いのかねぇ。 と思って、ふと思い出したのが、bugzilla。 なんか、日本語版のbugzillaも配布されているようです。 ただ、ドキュメントが機械翻訳のため、あまり日本語リソースは無いかも知れません。 加えて、MySQLとか、UNIX環境が前提っぽいので、 今うちのチームに入れるのは難しいかも知れません。 (→それが既にダサいんですが...) もう少しライトウェイトなやつを、自分で作るしかないのかなぁ...

11/15(Thu)

/** 人身事故多すぎ。 */ 今日は、帰りの時間帯に3件同時に起きてました(>_<; なしてこんなに多いの...? /** Excel VBAマスター!? */ 配列の宣言は、丸カッコだし、 9コで宣言すると、0〜9の10コが使えるし、 (だから、1オリジンで使うってワケだ(^^;) 関数の戻り値は、関数名と同じ変数に入れることでできるし、 きわめつけは、VARIANT型なる、なんでも入るよ型があるし。(JavaScript!?) とりあえず、面白いです(^^; 遅くとも今月いっぱいぐらいで、一通り使えるようになる予定。(ほんとか!?) /** 雑誌 1冊/月は少ない? */ 今月、既にJava Worldを読み終えてしまったので、 電車の中で読む本ありません(T_T) やっぱ、月1冊ってかなり少ないような気がするなぁ。 それとも、本をもう少し買った方がいいのかなぁ。 帰りに、上野駅の本屋に寄って、DB Magazineとか立ち読みしてみたけど、 「う〜ん。いまいち(T_T)」 って感じなんだよねぇ。 とりあえず、面白そうな本をbk1で探した結果、 要求定義工学入門と、 ソフトウェア品質のガイドライン になりました。 やべー超濃そう(^^; とても、Excel VBAの本読んだ後に、読む本じゃないような気がする(^^;;

11/14(Wed)

/** や、やられた... */ 今日もリーダーに先に帰られました(>_<; しかも、二日連続... なんせ、定時より前に帰る準備してるしねぇ。 /** Oracleのコネクションプーリングは強力! だけど... */ 今のところ、特定のAPサーバを入れてないので、 暫定として、poolmanを入れていたんですが、 今日になって、OracleのJDBCドライバが持っているプーリング機能を使えることが分かったので、 poolmanと差し替えてみました。 ...すると! パフォーマンスが大幅に改善しましたっ! どうやら、poolmanには、内部的にムダな部分がまだまだあるようで、 その辺のムダがない、かつ、純正ということもあったようです。 ちなみに、poolman使用時に、「-Xrunhprof:cpu=times」オプションでプロファイルしてみたら、 全実行時間の30%程度(あくまで、うちのプログラム走らせた結果ですが。)が「toLowerCase」の実行に当てられているなど、 まだまだ洗練の余地があるようです。 で、なんで今までOracleのプーリング機能を使えていなかったかというと、 付属のサンプルプログラムが間違っていたんですねぇ(>_<; サンプル上では、oracle.jdbc.pool.OracleConnectionPoolDataSourceクラスを使えばできるように書いてありますが、 実際これだけでは、プール機能は有効にならないのです。 じゃあ、どうするかっつーと、 oracle.jdbc.pool.OracleConnectionCacheImplクラスのコンストラクタに、 oracle.jdbc.pool.OracleConnectionPoolDataSourceのインスタンスを突っ込み、 なおかつ、setMaxLimitメソッドとか、setMinLimitで、 プールするコネクション数を制御してやって、初めてプーリングが機能します。 っていうか、スタート地点は、サンプルプログラムが有力な情報源となるだけに、 それがウソってのは、かなり痛いよねぇ(>_<; Oracleさん、なんとかして下さい... /** Windows Me使ってみた。 */ ちょこっとだけ触らせてもらいました。 が、ほとんど何もしない内から、ダイアログボックスが操作不能になり、 Ctrl + Alt + Del(っていう表現はマズいんだけどね(^^;)しまくってたら、 リブートがかかり、さらに「ひゅーん」という音とともに落ちてしまいました(^^;; さすがは、史上最もよく落ちるOSとして、名高いだけはあるね(^^;

11/12(Mon)

/** 武内アナが報道!? */ 愛のエプロン2とか、ひざくりげとか、深夜のバラエティー専門かと思ったら、 なんと! ニュースステーションに出演してました(^^; びっくり。びっくり(^^;; 結構前から出てたのかなぁ...? っていうか、↓見てみたら、ミュージックステーションに出てるのね(^^; http://www.tv-asahi.co.jp/announcer/personal/women/takeuchi/body1.html 全然しらんかった... /** デザインレビュア */ 自分のグループの作業ほっぽって、他チームのレビュアしてます(^^; 自分のチームのことをタナにあげて、 他チームのことをクサしてます(^^; いらんstaticメソッドがあったり、\r\nとか直書いてあったりするし、 どうみても引数が多かったり、メソッドの中身が長すぎたり、 どう考えても、要リファクタリングって感じだし。 っていうか、引数が多いとか、メソッドの中身の長いとかいうのは、 Javaとかいう以前に、プログラミングセンスにかかる問題だよねぇ。 ちゃんと、不吉なにおいを感じましょう(^^)/ つーわけで、明日もレビュー(>_<;

11/11(Sun)

/** amazon使ってみた。 */ CD届きました! というか、届いてました! 木曜日深夜の注文から3日目と、非常に早かったのではないかと思います。 かかったお金は、税込みで3059円なので、店頭で買った場合と変わらないでしょう。 (送料はタダらしい。) 配送方法は、郵便ポストに入れる方式でした。 玄関まで持ってきてくれるわけじゃないけど、 これはこれで、いいんじゃないでしょうか。 ちなみに、買ったCDは、D.A.IのDEEP FORESTなので問題は無かったと思いますが、 (9/19発売だったらしいので、イマサラって感じですね...) 在庫が希薄な商品とか、配達地域によっては遅くなる可能性もあるでしょう。 とりあえず、いちいち店まで行くのがめんどうとか、 行ってるヒマないとか、そもそもCD買える店が近くに無いとかいう場合には、使えると思います。 /** 構造改革? */ んー。なんか深いです。。。 http://village.infoweb.ne.jp/~fwgf2942/LectureManager/MG.LaborLaw.html のほほ〜んと会社に居座ってる or しがみついてるだけじゃあ、 いつかは淘汰されちゃうってことだよね。 この人のページのどこかに書いてあったと思うけど、 この業界変化が激しい → 色々覚えていかなければならない → 仕事が忙しくて覚えるヒマがない → 結局何もできない → [最初に戻る] っていう悪循環に陥ってるんだそうな。 「仕事が忙しくて覚えるヒマがない」ってのをなんとかしようってんで、 「出来るところからプロセス改善して、残業を減らしましょう」 っていうのも、多分どこかに書いてあったと思う。 僕なんかは、「仕事が忙しくて覚えるヒマがない」は言い訳だと思ってますが。 ちなみに、昨日会った、電気/機械系に勤めてる友達いわく、 「仕事は現場で覚える!」 だそうです。 もちろん、ソフトウェア業界においても、経験は重要ですが、 「この業界変化が激しい」という辺りに、 それだけでは、全く不足している要因があるんでしょうね。 また、11/2に書いた「技術」と「理論」の両立論になっちゃいそうです(^^; とりあえず、「足手まとい」にならないように、がんばろうっと(^^)/
[最新記事] [過去ログ]