スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

ソフトウェアパターン勉強会

今日、ソフトウェアパターン勉強会に参加してきた。

ネットでDIについて調べていたら、このサイトに行き着いて興味があったので行ってみた。
場所はIBMの箱崎事業所で、初めて行ったのでちょっと道に迷った。参加者は、40人くらいでいつもよりは少ない模様。
今日のお題は、「J2EEのパターン」 。
レイヤアーキテクチャとプレゼンテーションレイヤについての話だったが、レイヤアーキテクチャだけで時間が過ぎて、プレゼンテーションレイヤについては次回持越しとなった。
レイヤアーキテクチャーについては興味があり、MVC、BCE、J2EEパターンについて、自分の理解が不明確なところがあったので、今日の内容は参考になった。

オブジェクト指向とレイヤアーキテクチャの関連について聞いてみたかったが、そこは今回の本題ではなかったので今回はパス。次回も参加しようと思う。

スポンサーサイト

Oracle対応

家計簿プロジェクトが一段落したので、MySQL用のものをOracleでも使えるように移行。

まずDDLから修正が必要。MySQL用で使っていたstartという名のカラムがOracleでは予約語になっていた。困ったなあと思ったが、SQLでstartを使っているところを置換し、それを使っているデータクラスに一つsetterを加えるだけで簡単に修正は済んでしまった。
DDLではMySQLに入っていた改行がOracleではことごとくはじかれた。しばらく使っていないので感覚が取り戻せていない。

テーブルのCreateに成功後、JUnitを実行するが、当然の如く、データのロードではじかれる。データローダーのクラスでMySQLでは問題にならなかったバグを発見。何とかデータのロードはOK。

そして、SQLの違い。coalesce関数はどちらにもあって助かった。data_format関数は、テストクラスで使っている部分は、Oracle側にアダプタ関数を作って対応。

そしてしょっぱなのユーザ情報取得でデータが帰ってこない。SQLがおかしいのかと思ったがそうではない。なぜだ。直接Statementで発行するとOKなのに、Preparedが駄目。たぶんしょうもないミスだろうと思ったが、やはりつまらないミスだった。charでカラムを作っているところに、少ない文字数で問い合わせをしていた。しばらくOracleを使っていないとこうなる。MySQLではこういうところは問題にならない。DBの方言の差は大きい。

今日はここまで。


FindBugs

地道にこつこつと空いた時間を見つけて行ってきたプロジェクトがようやく終焉を迎えた。
jsp,テストコード含め、1.3Mぐらいになる。何の得にもならない仕事を時間をかけて最後までやってしまう自分はやはりアホだなと思う。まだまだ完璧とはいえないが、完璧を追求すると永遠に終わらないので、ここで強制終了することにする。

どれぐらいの品質か、またテストケースがどれだけカバーされているかチェックするツール、それから不足しているテストケースを自動的に補うツールを試してみたい。今まで簡単なコードチェッカーは試したことがあったが、こういうものは使ったことがなかったのでどの程度使えるのか、機会があったらやってみようと思っていた。

まずは、@ITの記事に載っていたFindBugs

これはソースの静的解析ツール。de.tobject.findbugsをダウンロードして、展開して、eclipseのpluginsに置く。
ファイルかフォルダを右クリックすると出てくる、Find Bugsで実行。実行にはそれほど時間がかからなかった。eclipse自体が持っているワーニングマークと同様のマークが表示される。

ANDと||を間違えるしょうもないバグが見つかったが大半は些細なもので直接障害を起こすものではなかった。コードの質がよいのかそれとも検出率がよくないのか、それとも性的解析ツールとはこんなものなのか。


プロフィール

dayan

Author:dayan
小職は、SE(システムエンジニア)を専門としておりますが、技術的な情報を中心に、それ以外に経済関連の日記、たわいもない日記も載せていきます。
[公式HPもよろしく!]

天気予報

-天気予報コム- -FC2-
リンク
ブロとも申請フォーム

この人とブロともになる

カテゴリー
最近の記事
ブログ内検索
最近のコメント
最近のトラックバック
RSSフィード
月別アーカイブ


上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。