Kenji のすべての投稿

DIxAOP の Java Framework, Spring


Spring3 入門 (技術評論社)
Spring3入門 を Amazonで買う

DIxAOP ってなんだ? と思っていたら、 ある人が紹介してくれました。 DIxAOPについてはわかりやすく書かれているそうです。 パラパラっと見てみましたが、 EAADDD などのアーキテクチャを一通り知っている人が書いた本に見えます。 今回は第1章をじっくり読んでみました。 Spring フレームワーク の前書きみたいな内容で、 Spring を使ったことのない私にはちょうどいいです。

Spring の特徴

Spring の特徴として 際立っているのが DIxAOP だ。 第1章では紹介程度になっているのだが DIxAOP なくして Spring は成り立たないといっても過言ではなさそうだ。

Spring の DIxAOP 設計 は Webアプリケーション が抱える 3つの問題点 を解決する。 以下、簡単にまとめた。

オブジェクトのライフサイクルの問題
オブジェクトの生存期間をコントロールする作りこみが困難
部品化の問題
部品化をするためには実装非依存にする必要があるが、それなりにコストがかかる。 (注: 単にインターフェースを使えばいいという問題ではない。)
技術隠蔽や不適切な技術隠蔽
高レベルの技術を初級レベルの開発者に利用させて不具合を引き起こしてしまったり、不適切な技術隠蔽をしてその技術の利用が困難になってしまったりすることが開発現場でよく起こる。

Spring では、 上2つの問題を DIコンテナ が、 最後の問題を AOP が解決する。

Webフレームワーク というと Rails や FuelPHP, CakePHP などがあり、 「(アクティブレコードパターンの) 簡単にデータベースが使えるもの」という印象を受けてしまいがちですが、 Spring3 入門 では アーキテクチャ の考え方からしっかりと書かれていて EAAに見られるパターンの説明も(第1章では)随所で行われています。 第1章では特にレイヤの分離の説明が重点的に行われています(フレームワークを使う人には是非ともわかるようになっていてほしい内容です!)。 コードの例もあり、全体的にしっかりした印象を受けます。

以下、第1章の中で私が(個人的に)重要だと思った内容を簡単に書き留めました。

アプリケーションアーキテクチャ

プログラムを作る際には 最低でも 2つの方面からの要件・目標がある。

  • ユーザの要件: ユースケースなどで表される機能要求やレスポンスタイムなどの非機能要求
  • 開発者・運用者の目標: 開発期間の厳守、変更・機能追加のしやすさ、テストのやりやすさ

この本では 2つ目の 開発者・運用者の目標 からアーキテクチャの重要性が説かれている。

アーキテクチャに求められるもの

  • 開発効率
    • 意図を把握しやすく、理解しやすい構造
    • テストが容易に行える構造
  • 柔軟性
    • 変更しやすく、機能追加しやすい構造
    • 将来の環境の変動に耐えられる頑健な構造

ティアとレイヤ

Web アプリケーション の アーキテクチャ は ティア と レイヤ に分かれている。 ティア は 物理層 を表し、 レイヤ は 論理層 を表す。

ティア

クライアント層、中間層、 EIS(Enterprise Information System)層 の 3つに分かれるのが基本となっている。

各ティアの例
クライアント層 パソコン、スマートフォン
中間層 アプリケーションサーバ
EIS層 DB、レガシシステム

レイヤ

EAA の冒頭あたりにある分類と同じ分け方でレイヤが書かれている(プレゼンテーション層、ビジネスロジック層、データアクセス層 の3層)。 (もちろん異なる分け方もある。) 互いに隣接するレイヤ間では一方向のアクセスのみ許す。

トランザクション処理がどのレイヤに属するのかは迷うところだが、本書ではプレゼンテーション層とビジネスロジック層の境界と説明されている。

Spring3 入門 (技術評論社)
Spring3入門 を Amazonで買う

引越業者の比較 アリさんマークの引越社(引越社関西) と サカイ引越センター


過去にアリさんマークの引越社とサカイ引越センターを使ったことがあるのでその時の比較を書いておきます。

使ったのは次の区間です。 私がすべて立ち会いました。

アリさんマークの引越社 (引越社関西)
2008年 京都府京都市から兵庫県宝塚市、 2013年 大阪府大阪市阿倍野区から東京都足立区 (14万円)
2010年 サカイ引越センター
兵庫県宝塚市から大阪府大阪市阿倍野区

総評

アリさんマークの引越社がおすすめです。 エリアによるとは思いますが、 私はもうサカイ引越センターを使うことはないと思います。

アリさんマークの引越社 (引越社関西)

  • 荷物の扱いが丁寧。 大きな荷物(電子レンジなど)は運ぶ前にほこりを拭いてくれる。
  • ちょっとした清掃などもおねがいすればやってくれる(10分間サービス)。

2回使いましたが、2回とも気持ちよく引越できました。

サカイ引越センター

  • いろんな荷物の扱いが雑。
  • 部屋の中に汗がどんどん(したた)り落ちる。
  • かなり安くできる。
  • 使用後の段ボールを取りにきた人が怪しい人。
  • 営業はしつこい。
  • 契約後の連絡が遅い・不十分。

西宮・尼崎エリアのチームは日本国内でもトップレベルだと営業が言っていましたが、さほどでもないです。

そのほかだとアーク引越センターを使ったことがあります。 立ち会ったのは私ではないので詳細はわかりませんが、 悪い話は聞いていません。


ネオスチグミンが最大濃度配合された目薬


ネオスチグミンが最大濃度配合された目薬を探してみましょう。 「ネオスチグミンって何?」という方は目薬に含まれる成分の効果をご覧ください。

続きを読む ネオスチグミンが最大濃度配合された目薬