http://martinfowler.com/bliki/HarvestedFramework.html

使えるフレームワークを作るには、フレームワークの構築から始めるのではなく、アプリケーションを作ることから始めよう。アプリケーションを作る時でも、汎用的なコードを開発しようとしないで、うまく分割され設計されたアプリケーションを作るのだ。

あるアプリケーションを作ったあとで、同じような要求をもつほかのアプリケーションを作ることがある。こんな時は、一番目と二番目のアプリケーションの間にある重複に気を配ってみる。重複を見つけたら共通領域に入れてやる。この共通領域がフレームワークの前段階(プロト・フレームワーク)になる。

さらにいくつかのアプリケーションの開発を続けていくと、そのフレームワークは徐々に洗練されていく。 最初の二つのアプリケーションのコードは、すべてを単一のコードベースに留めておいてほしい。 いくつか回数を重ねるうちに、フレームワークは安定しはじめ、コードベースの外に分離させられるようになる。

これはFoundationFrameworkに比べて大変で、効率的でないように聞こえるかもしれない。 しかし実際にはうまくいくように思う。

comment

  • 2004-04-08 (木) 03:57:17 ‘’[[cept]]’’ : ★部分、かなーり雰囲気訳です。主語も述語もよくわかりません
  • 2004-04-08 (木) 10:15:40 ‘’[[kdmsnr]]’’ : 直してみました。一文目とタイトルにうまい訳があればいいんですけどねえ。「Harvest」
  • 2004-04-09 (金) 19:54:10 ‘’[[haruki]]’’ : 「フレームワークを収穫するには、」じゃだめですかね。
  • 2004-04-09 (金) 23:50:22 ‘’[[kdmsnr]]’’ : あと一回転欲しいところです。
  • 2004-04-10 (土) 02:08:35 ‘’[[ogino.]]’’ : 素直に「収穫型フレームワーク」
  • 2004-04-10 (土) 02:09:22 ‘’[[ogino.]]’’ : 意味的な観点で「実績型フレームワーク」
  • 2004-04-10 (土) 02:10:11 ‘’[[ogino.]]’’ : 間を取って「結実型フレームワーク」とか。何度もスマソ
  • 2004-04-11 (日) 22:48:06 ‘’[[goh.morihara]]’’ : おっと失礼。「成熟フレームワーク」ではいかが? 収穫するのは熟れたものでしょう?
  • 2004-04-12 (月) 10:18:03 ‘’[[kdmsnr]]’’ : Foundationと対比できると一番いいんですけどね。でも先日、さっそく「ハーベステッドフレームワーク」とおっしゃっている方を見かけました。これでよかったりして。
  • 2004-04-12 (月) 10:51:14 ‘’[[haruki]]’’ : 「収穫型フレームワーク」「基礎型フレームワーク」として、「フレームワークの収穫をめざして、」で、どうでしょう。
  • 2004-04-12 (月) 11:05:51 ‘’[[haruki]]’’ : あと、「頑張ればいい」、「気を配ろう」、「留めておいてほしい」などの呼びかけチックなところ、「頑張るのだ」、「気を配る」、「留めるようにする」と言い切ってみるのは、どうでしょう。
  • 2004-04-13 (火) 00:01:11 ‘’[[cept]]’’ : 言い切ってみました。Harvested/Foundationについては、外来語をそのまま書くだけで特別性を付与できる日本語の特徴を生かして、そのままでもいいんじゃないでしょうか。 *2004-04-13 (火) 00:07:43 ‘’[[kdmsnr]]’’ : 御意に。