インターフェイス指向設計 アジャイル手法によるオブジェクト指向設計の実践
|
|
|||||||||||||
本書は、プログラムにおけるインターフェース設計へアドバイスを与えるものです。GUIやデザインの話ではありません。高凝集度で疎結合な設計を行うためにインタフェース設計をどのように進めたらよいか、どのように考えてインターフェースを作れば良いかなどを説明しています。
システム開発というのは複雑な作業です。その複雑さを少しでも解消するために分割して統治せよ(Divide and Conquer)という理論を用いることが良いことだとされています。このときに大切になってくるのが「凝集度」と「結合度」になります。
凝集度は高いほど良い、つまり責任範囲が明確でが軸ぶれないほどよいです。結合度は低いほど、つまりそっちはそっちで勝手にやっててねとできるほどよいです。高凝集で低結合(英語で言うと「High Cohesion and Low Coupling!」)なプログラム部品にするために必要なのが「良いインターフェース」なのです。本書は、この良いインターフェースとは何か?どうやって良いインターフェースを設計するか?を解説するものです。
本書の対象読者は、プログラム経験があり設計に興味がある人、DI(Dependency Injection)って流行ってたけど未だに何が良いのかわからない人、テスト容易性が大事って聞くけどどうやって設計したらいいかわからない人です。
200ページくらいしかなく、かなり薄い本になっていますのでサクサク読めると思いますが、実はあまり詳しい説明というのが載っていません。内容が薄いのではなく、説明が薄いのです。「こんな場合こういう考えでインターフェースを切ると良いよ。作り方は二種類ある。長所はこれで、短所はこれ」みたいな説明が多いように思えました。
それでもかなりの良書の部類に入ると思います。さらっと読んで、良く理解できなかった部分は先輩に聞いたり、Webで質問したりして、自分なりに噛み砕いていく。そういう読み方をする本かなと思います。
| 続きを読む>> TOPドメイン駆動
|
|
|||||||||||||
本書は、ドメイン駆動設計(DDD:Domain Driven Design)について書かれているで、ドメインモデルエンタープライズアプリケーションアーキテクチャ、アーキテクチャパターン、テスト駆動開発を勉強する本です。
この本のお勧めの点の一つが、筆者の経験をもとにした生きたサンプルにあります。「システム開発は○○の理由でドメイン駆動設計を行ったほうがよい。こういう背景があって、こういうアーキテクチャパターンの適用を考えていく。」こういった生きた経験が本書にちりばめられています。
対象読者は業務アプリケーション開発に携わるアーキテクチャ、システムエンジニア、開発者さん達です。最近は定着したドメイン駆動設計(ドメイン駆動開発)という言葉ですが、現場で実際に使われているのは実は少ないのではないでしょうか。ドメイン駆動で設計するとはどういったことなのか?本書を読めば、新しい視点が学べると思います。お薦めの一冊です。
| 続きを読む>> TOP技術メモ
RESTful Webサービス
|
|
|||||||||||||
REST とは リソースの状態を表す「何か」を転送するということを表した、Webアーキテクチャスタイルです。REST はアーキテクチャではなく、アーキテクチャのスタイルであり、実際に REST スタイルのアーキテクチャとして、ROA(リソース指向アーキテクチャ)などがあります。
本書は、この REST と ROA に関して解説されたもので、RESTful なシステム(REST スタイルに則ったシステム)の設計方針、ROA の考え方などが解説されています。
Web アプリケーション開発をこれまでしてきた中で、RESTful や ROA な考えでシステムを設計したことがない人には、新しい発見があり、とてもわくわくして読むことが出来ます。
本書は、特に、Web アプリケーションの設計者、アーキテクトの方が読むと良いと思います。最近話題の REST の詳細を理解したい人、RESTful システムを構築したい人、ROA の考え方を取り入れたい人に本書はお勧めです。
オライリーっぽいちょっとお堅い文章ですが、楽しく読めると思います。『WEB+DB PRESS vol.42
』の現場で使える REST の記事を読んで、REST とは何か? ROA とは何か?の概要を抑えてから読むと、理解が早いと思います。
お勧めです。
参考: yohei-y:weblog
Struts2 おぼえがき
Struts2 は WebWorks2 をベースとした MVC フレームワークです。Struts1 と変わらずコマンドパターンのフレームワークになっています。
コマンドパターンの実装部分では、OPENSYMHONY の XWork が使われています。
Struts2の特徴
- WebWorks の後継となる WebWorks2 がベースの MVC フレームワーク
- コマンドパターンが使われている(XWork が使われている)
- アノテーションと XML ファイルによる設定
- ActionForm がない。代わりにアクションにフォームデータを格納する
- アクションは POJO で作成できる
- アクションがスレッドセーフ
- 設定ファイルに OGNL 式が書ける
- View に JSP、Freemaker、Velocity、XSLT が使える
- SpringFramework との連携が考慮されている
- Ajax をサポートしている
- プラグインによりフレームワークの拡張が行える
情報が正確ではない可能性が大いにあるので(ドキュメント読まずにソース見ながら書いているので・・・)、鵜呑みにしないでください。
随時更新予定です。
| 続きを読む>> TOPWebLogic でカスタムキーストアを使って SSL 通信を行うおぼえがき
WebLogic9.2J でカスタムキーストアを使ってSSL通信を行うおぼえがきです。
使用した WebLogic は、下記のサイトからダウンロードしました。
日本BEAシステムズ株式会社 Evaluation Center 
環境
- Red Hat
- WebLogic Server 9.2J & MP
- OpenSSL
Lifehacker インターネット時代のワークスタイル改善術!
|
|
|||||||||||||
ライフハックとは、仕事や生活を快適にし、生産性をあげ、人生をハッピーにする技術のことです。本書はインターネット時代の現代におけるライフハックのノウハウ本です。
本書では、メールやネット上のツールを使ったハック術を取り上げて、実際の利用方法やTipsを解説しています。全88のハック術を説明しています。ひとつのハックが大体3〜5ページくらいに収まっているので、テンポ良く読み進められます。
対象読者は、今の自分の仕事環境や生活環境をよりよくしたいと考えている技術者の方です。簡単に導入できるものばかりなので、読んですぐ実践できるのが本書の良いところです。それぞれのハックに、導入レベル、プラットフォーム、導入コストが記されているので、自分の環境に合わせてハックを実践できるようになっています。
| 続きを読む>> TOP



![[24時間365日] サーバ/インフラを支える技術 ~スケーラビリティ、ハイパフォーマンス、省力運用](http://ec2.images-amazon.com/images/I/51uK4ACymiL._SL500_AA240_.jpg)





























