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

【オブジェクト倶楽部: 2004-41号】オブジェクト指向の再定義[2] - EoC

前回は、EoT(Ease of Testing: テスト容易性)によってよいオブジェクト指向 設計を再定義したい、という表明をした。今回は、二本目のナイフを抜きたい。 キーワードは、EoC(*1)(Ease of Changing)、変更容易性だ。この記事では、 EoCの高い設計が、よいオブ…

開発現場の天国と地獄

この段階で、何とも不思議な問題が顧客と開発チームの間で取りざたされるようになりました。「仕様書がない」という問題です。前述のようにこのプロジェクトでは、UMLで非常に詳細な設計を行っています。数百万円ものUMLモデリングツールを活用し、クラス図…

関西弁で日記を書く

ことにしようと思います。 機械猫の日記 http://d.hatena.ne.jp/kikaineko/ を読んで、あー関西弁ってありやなあと思いました。自分のスキルの一つですし(w 機械猫さんて京都の人かな?

ソフトウェアテスト

立派なお客様で品質標準もしっかり決めておられるにも関わらず、実際に書かれた開発計画書をみると、品質目標の欄が空白だったりする。「これではプロジェクト運用に支障をきたしますからまずは目標設定を」と言うと、それをつくるのがあなたの仕事でしょ、…

エスケープ文字の宣言

db

メモ。「M_」で始まるテーブルを検索したいとき select count(*) from user_all_tables where table_name like 'M@_%' ESCAPE '@'

業務アプリとDOA

結局 「データの出し入れ」を行うだけの業務アプリケーションには、オブジェクト指向分析/設計はあわない。『データ指向アプローチ(DOA)』でドメインモデルを設計したほうが、データベースとの相性は良くなる。オブジェクト指向アプローチは、「振る舞い」を…

Container-Managed Transactionsのロールバック

メモ。いまさらですが・・ Container-Managed Transactionsがロールバックするのは2つの場合があります。1つは、システム例外が投げられた場合です。このとき、コンテナは、自動的に、トランザクションをロールバックします。もう1つの場合は、EJBContextイ…

<A HREF="http://www.amazon.co.jp/exec/obidos/ASIN/4894716933/niraikanaibir-22">アナリシスパターン</A>

あのアナリシスパターンが、原宿のBookOffにて¥900で売ってた。ぬぉ〓お得で砂。 いそげ!早い者勝ち!w

マスタチェックをまた考える

以前書いた内容が浅かった(恥じ)ので補足。 トランの新規登録時には、トランが持つマスタのコードの存在チェックした上で登録する。参照整合性制約ではじけばいいと思ってたけどエラー処理がめんどくさそうだ。チェックしたほうがキレイ。 で、ここのマスタ…

つまるところ

db

やっぱりビュー(インラインビュー含め)は避けたいな。Oracle8i以降はビューに対する問い合わせをそれほど非効率なSQLにマージすることはなくなったらしいけど、バンザーイというほどでもないんだろうし。 ビューを使うときの「べからず集」とかないかな??

CBOによるビューのマージ

db

CBO によるビューのマージ方法 ビューにアクセスする文の参照問合せブロックにビューの問合せをマージする場合、オプ ティマイザは、問合せブロック内のビューの名前をビューの実表の名前に置換し、アクセス する問合せブロックのWHERE にビューの問合せのWH…

Oracle ビューは基本的に悪?

db

メモ。 基本的に、インラインビューで抽出されたデータには索引がありませんので、 抽出データからの再度の条件付け抽出や結合処理については索引は使用されません。 そのため、インラインビューを使用する場合は ・抽出件数をビューの段階で絞り込めるよう…

昔つくったWebアプリ

昔つくったWebアプリのことを風呂に入りながらふと思い出してみた・・ 今も現役で使われているとのこと。(グループ会社内での申請系アプリ) 思えば・・(恥じをしのんで) セキュリティ サニタイジングなんて全くしてなかったな。言葉すら知らなかったし(…

WebLogicのRMI

●RMIプログラミングモデル WebLogicのRMI実装は、3つの異なるネットワークプロトコルをサポートしています。 T3、T3/HTTP、そしてIIOPです。 T3はWebLogic固有のプロトコルで、ネットワーク回線を経由するリモートメソッド呼び出しの送受信を高速化するよう…

djUnit

djUnitは JUnit の機能と Aspect の機能を併せ持ったユニットテストツールとなっています。 http://works.dgic.co.jp/djwiki/Viewpage.do?pid=@646A556E6974 おおぉ!かなりよさーげじゃないですか。 使いたいなー。その前にAspectをちゃんと勉強しないとナ…

インラインビューは最後の手段

db

インラインビューのデータを検索するのには実テーブルのインデックスが使われるが、インラインビュー自体は一時的な作業領域として扱われるので、インラインビュー自体を検索するときはインデックスは使われない。 ビューが欲しいときは一時表かマテリアライ…

今日の一曲

Boogie / BrandNewHeavies 新ボーカルがかっこいい!!

<A HREF="http://www.amazon.co.jp/exec/obidos/ASIN/4274064069/niraikanaibir-22">UNIXという考え方―その設計思想と哲学</A>

WEB+DB PRESS Vol.23でアガタさんが紹介していて、よさげ〓と思ったので購入。 じっくり読もう。

パフォーマンスチューニング

「パフォーマンス志向のコーディングは危険、プロファイラを使うべき」の意味がわからない。 いったいどういう危険が?? コーディング時には余計な最適化を行わないようにしましょう。もちろん、わざわざ非効率なコードを書く必要はありませんが可読性を落…

今日の一曲

Sing a Song /こっこちゃんとしげるくん

デスマ

今までも十分デスマだと思ってたけど、新たな姿をあらわしてきたなあ・・ ドラクエ4のデスピサロみたい(古すぎ

マスタチェックなど不要

業務アプリでのマスタチェック・・・社員マスタチェック、仕入先マスタチェックなど そんなのプログラムで実装しなくていいんじゃね〓か? マスタからトランに参照整合性制約つけて、トランに存在するコードのマスタを削除する処理が実行されたらDBのエラー…

『各位様』じゃないっつーの

『各位』は『殿』の複数形です。すでに敬称です。 『様』をつけるのは二重敬称になるので正しくないです。

アイソレーションレベル

db

●READ UNCOMMITTED ●READ COMMITTED ●REPEATABLE READ ●SERIALIZABLE OracleとPostgreSQLは ●READ COMMITTED ●SERIALIZABLE をサポート。DB2は全部サポート。(まちがってたらスマソ)

はじめてのIndexOnly

db

ソート処理を省いてくれます。 <例題> t_uriテーブル:約14万件 このテーブルにdennum, recnumの複合インデックスが貼られている場合 ●IndexOnlyでクエリー select dennum, recnum from t_uri order by dennum, recnum EXPLAIN実行結果> SELECT STATEMENT …

Oracle通信

db

http://www.oracle.co.jp/2shin/欲しい!!パートナーになってくれ!! 「お知恵を拝借! OTN-JフォーラムのQ&Aから」がイイ感じ。

やばい!!

tv

ドクターコトー診療所2004が放送される!! もうやばい。予告だけで泣きそうになる。 自分にとってコトーの一番の魅力は自然の描写。まじで美しすぎる。見てるだけで泣いてしまう(笑 いやーDVD買おうかな・・

軽快なDBアクセス

db

SQLを30行以上書かないで欲しい。 インラインビューをそんなに連発しないで!!メンテナンスできないよー コピペしまくり。重複した問い合わせありまくり。 SQLのリファクタリングも必要だな・・ ていうかER図がダメダメなのが根源かな。

日経システム構築

巻末にはぶさんが!ぬおーさすがだ。

イミュ〓タブル

この本のミュータブル・イミュータブルの説明ってちょっと足りないですよね。 イミュータブルオブジェクトの作り方は書いてるけど、ミュータブルオブジェクトの扱い方は書いてない。(見逃してたらスマソ) ●Java謎+落とし穴徹底解明標準プログラマーズライ…