オライリージャパン

ThoughtWorksアンソロジー ―アジャイルとオブジェクト指向によるソフトウェアイノベーション

ThoughtWorksアンソロジー ―アジャイルとオブジェクト指向によるソフトウェアイノベーション

New

おすすめ度 :おすすめ度:4.0

ThoughtWorks Inc.

種類 : 単行本(ソフトカバー)

翻訳 : 株式会社オージス総研 オブジェクトの広場編集部

高さ : 94hundredths-inches

487311389X

オライリージャパン

長さ : 827hundredths-inches

ページ数 : 276 ページ

発行日 : 2008-12-27

出版社 : オライリージャパン

発売元 : オライリージャパン

重量 : 79hundredths-pounds

幅 : 591hundredths-inches

発送可能時期 : 在庫あり。

価格 : 2,730円(税込)ショッピングカートに入れる


ThoughtWorksアンソロジー ―アジャイルとオブジェクト指向によるソフトウェアイノベーション 購入者のレビュー

一点集中で、5章「オブジェクト指向エクササイズ」についておすすめ度:5

私個人として、5章の「オブジェクト指向エクササイズ」が一番関心を持って読んだので、
ここを集中して紹介しますと、

オブジェクト指向が出来ていると考えている開発者の多くが、
従来の手続き型に囚われオブジェクト指向の本来の力を発揮できていないが、
以下のエクササイズにより、本来のオブジェクト指向プログラミングを
深く理解できるようになる、とのことです。
#それぞれの意味合い・効果などは、本を読んでください。

---
1.1つのメソッドにつきインデントは1階層までにすること
2.else句を使用しないこと
3.すべてのプリミティブ型と文字列型をラップすること
4.1行につきドットは1つまでにすること
5.名前を省略しないこと
6.すべてのエンティティを小さくすること
  (※1クラス50ステップ以内、1パッケージ10クラス以内)
7.1つのクラスにつき、インスタンス変数は2つまでにすること
8.ファーストクラスコレクションを使用すること
9.Getter,Setter,プロパティを使用しないこと
---

このエクササイズにより、どのような開発・コードになるか、イメージできますか?
(私はイメージできなかったので。)

これはある意味エクササイズであり、実際の開発ではルールを緩めてガイドラインとして使うことを想定しているようですが、
著者のチームではこの方法で書かれた100KSのシステムを開発しており、開発者たちが「真にシンプルであることを受け入れた時に開発がどれほど楽になるかを知って、とても喜んでいる」と言っています。

私たちの開発とは別次元で、私のレベルではその本質・効果は分かりませんが、
この章を理解できれば確実にレベルが1段上がりそうだと思えました。


Pythonはどこ?おすすめ度:4

Rubyにふれているのはいいが、PrologやHaskellが出てくるのにPythonには一言も触れていない。ThoughtsWorksの人たちはPythonぎらい??


現代のソフトウェア開発におけるちょっとしたコツ集おすすめ度:4

本書を読むには、それなりにオブジェクト指向やアジャイル
を理解している必要があるだろう。

ThoughtWorks社のエンジニア達はおそらく現代でも最先端の
ソフトウェア開発技法を日夜研究している連中であり、この
本で彼らが取り上げるテーマは非常に興味深いものである。

ただし、それぞれのテーマについて詳細に解説されている
わけではないので、あくまでもちょっとしたコツ集ぐらい
に捉え、自身のかかわるプロジェクトにおいて少し利用
してみたり、あるいは応用させて適用してみたりするのが
いいのではないだろうか。


「アジャイル万歳」過ぎおすすめ度:3

アジャイル開発とオブジェクト指向のメソッドをもっと広く適用することで、効率を上げていきましょう、というテーマの論文集。
アジャイルとオブジェクト指向に対する絶対の信頼が大前提になっている。ので、この大前提を受け入れられる人にとっては非常に納得がいく内容だろう。しかし、私のように
「いや、オブジェクト指向って継承などで親クラスのバグがフラクタル図形のように手元のコードに入り込んでくるので、逆にデバッグが困難で困難で、それが問題にならないほど普通の人は質の悪いコードを書いているのか?」
「アジャイルが許されるほど一つのプロジェクトにだけ貼り付けられる人が確保できればいいけれど、特に日本の開発環境では到底…」
と感じている人には、むしろ強い反感が…。注意するべきなのは「今の日本の開発環境」のほうにも大量に問題があるので、馴染まないからといってこの本の内容が間違っている、という意味ではない、ということ。

一読には値すると思います。この段階で、星は5つ。しかし、内容に対する納得感が著しく乏しかったので星が2つ減らしてあります。


アジャイル開発とドメイン駆動設計の実践ガイドおすすめ度:5

アジャイル開発とかオブジェクト指向設計とか、SOAとか、理屈(理想)は分かるけど、現場で実践すると、いろいろな問題にぶつかってうまくいかない。
そういう悩みを解決してくれる、格好の指南書です。

13篇の技術エッセイ集です。どのエッセイも、現場向きの実践的ガイドです。
そしてどのエッセイも深い洞察や理論的背景など、知性の香りが、そこはかとなく、ただよいます。

・イテレーションをうまくやるコツ
・プロジェクトの健康状態を簡単にチェックする
・肥大化したAntファイルの実践的なリファクタリング
・限られて時間・資源の中での効果的な性能テスト
・SOAやDSLの現場で出くわす問題と、解決の指針
・実践的な継続的統合(ワンクリックデプロイ)
...

ソフトウェアのライフサイクルのさまざまなシーンについて、現実の問題と、その実践的な解決の方向という、興味深い議論ばかりです。

個人的には、5章の「オブジェクト指向エクササイズ」がいちばんのお気に入りです。

・else 文の禁止
・インデントは一段のみ
・一行につきドットは一つ
・ひとつのクラスにインスタンス変数は2つまで
・Getter/Setterは使用禁止(インスタンス変数にアクセス禁止)

など、かなり過激な9つのルールを徹底すれば、見違えるほど設計が「オブジェクト指向」になる、というエッセイです。
「リファクタリング」(マーチンファウラー著)のエッセンスを10ページ、9つのルールにまとめた感じ。

ソフトウェア開発の現場で知的に戦っている人たちにはお勧めの一冊です。

翻訳を担当された「オブジェクトの広場」の関係者の皆様のパワーとセンスを感じました。