タグ: デザイン
デザインは死んだのか?
エクストリームプログラミングに少し触れたことのある多くの人にとって、XPはソフトウェア設計の死を招くように見える。多くの設計活動が「Big Up Front Design(事前に多くの設計を行うこと)」として嘲笑されるだけでなく、UML、柔軟なフレームワーク、さらにはパターンなどの設計技法も軽視されるか、完全に無視される。実際、XPは多くの設計を伴うが、確立されたソフトウェアプロセスとは異なる方法で行う。XPは、進化を現実的な設計戦略にすることを可能にするプラクティスによって、進化型設計の概念を活性化させた。また、設計者はシンプルな設計を行う方法、リファクタリングを使用して設計をクリーンに保つ方法、進化型スタイルでパターンを使用する方法を学ぶ必要があるため、新たな課題とスキルを提供する。
制御の反転コンテナと依存性注入パターン
Javaコミュニティでは、異なるプロジェクトのコンポーネントをまとまりのあるアプリケーションに組み立てるのに役立つ軽量コンテナが急増しています。これらのコンテナの根底には、配線を実行する方法の共通パターンがあり、非常に一般的な名前「制御の反転」と呼ばれています。この記事では、このパターンがより具体的な名前「依存性注入」でどのように機能するかを掘り下げ、サービスロケータの代替手段と比較します。それらの間の選択は、設定と使用を分離するという原則ほど重要ではありません。
Ruby RoguesのPofEAAに関するエピソード
Ruby Roguesは、定期的なパネルがRubyプログラミングコミュニティのトピックについて話し合う人気のあるポッドキャストです。彼らは定期的なブッククラブを持っており、最近PofEAAを特集本として選びました。その結果、彼らは私に彼らの番組にゲストとして出演し、本とそれが記述するパターン、特にこれらのパターンとRailsフレームワークの間の興味深い関係について話し合うように頼みました。
Artima.comとのインタビュー
私はBill Venners氏に彼のartima.comウェブサイトのインタビューを受けました。インタビューでは、リファクタリング、進化型設計、柔軟性、テスト駆動開発について触れました。Billは私を首尾一貫しているように見せることさえできました。
変更可能性:あるいはアジャイルにデザインはあるのか
QCon London 2007の主催者は、私にアーキテクチャの変更可能性に関するカンファレンスセッションを行うように依頼しました。私は、私ではなく、聴衆は私が通常再パッケージ化するThoughtworksのアーキテクト、Dave Farley、Ian Cartwright、Fred George、Erik Doernenberg、Daniel Terhorst-Northの話を聞くことを好むかもしれないと思いました。InfoQは現在、セッションのビデオを公開しています。
GUIアーキテクチャ
GUIアーキテクチャがどのように進化してきたかについての歴史的概要。特に、Model-View-Controllerが長年にわたってどのように見られてきたかに焦点を当てています。歴史的な観点から、私のプレゼンテーションパターンと結びついています。
「イベント駆動型」とはどういう意味ですか?
昨年末に向けて、私はThoughtworksの同僚とワークショップに参加し、「イベント駆動型」アプリケーションの性質について話し合いました。ここ数年、私たちはイベントを多用するシステムをたくさん構築してきました。そして、それらはしばしば賞賛され、しばしば非難されてきました。私たちの北米オフィスはサミットを開催し、世界中からThoughtworksのシニア開発者が集まってアイデアを共有しました。
サミットの最大の成果は、人々が「イベント」について話すとき、実際にはまったく異なることを意味していることを認識したことです。そこで、私たちは多くの時間を費やして、いくつかの有用なパターンが何であるかを明らかにしようとしました。このメモは、私たちが特定した主なパターンの簡単な要約です。