4

誰もが再利用性について話すのが好きです。私が働いている場所では、新しいアイデアが投げかけられたりテストされたりするたびに、再利用性の問題が常に浮かび上がります。「これへの投資を最大限に活用したいので、再利用可能にしましょう。」「再利用性は、少ない作業でより高い品質をもたらします。」などなど。

私が見つけたのは、再利用可能なコンポーネントやアイデアが導入されると、誰もがすぐにそれを恐れて、それを悪いアイデアとして書き留めることです。アプリケーションがそれに依存するようになると、それは保守不可能であり、変更を加えると、それを使用するすべてのものに対して回帰テストを実行する必要が生じると彼らは言います。ここの人々は、特に長い間存在し、多くの扶養家族とライチョウを持っている1つのコンポーネントを指摘します。これは、変更がどのように機能するかわからないため、変更できなくなったためです。

この苦情に対する私の回答は次のとおりです。

  1. 依存関係が多いコンポーネントへの変更が遅いのは良いことです。これは、設計者が変更について実際に考えることを余儀なくされるためです。
  2. そもそもコンポーネントを正しく取得するには時間がかかるはずです。当然のことながら、常に変更する必要があると感じた場合、そもそも再利用できることはありませんでしたね。
  3. ソフトウェア開発は難しく、作業が必要です。テストもそうです。あなたはそれをしなければならない。

残念ながら、これらの回答で人々が耳にするのは、「遅い」、「時間」、「努力」です。

経営陣からブラウニーポイントを獲得するために自分が作ったものをひっくり返すことができる魔法の「これを再利用可能にする」スイッチがあればいいのですが、物事はそのようには機能しません。何かを再利用可能にすることは時間と労力を要します、そしてあなたはまだそれを正しくすることが保証されていません。

「再利用性」の要求は、それを実現することで苦情しか得られないように思われる場合、どのように対処しますか?

4

3 に答える 3

2
  1. 再利用性は、何かが実際に再利用される場合にのみ価値があります。再利用可能なものを作成する前に、実用的な再利用のケースがあることを確認してください。

  2. 再利用可能なライブラリは、それ自体のアドホックバージョンよりも保守が10倍難しい場合でも、10か所の異なる場所でアドホックバージョンの代わりに再利用可能なライブラリを使用すると、全体的な保守を節約できます。

于 2010-05-18T17:44:22.500 に答える
0

私たちがよく行うことの 1 つは、バージョンを使用し、絶え間ない再テストを避けることです。共通コードの新しいバージョンがあるからといって、すべてがすぐに新しいバージョンを使用しなければならないわけではありません。他の理由で何かが更新されている場合は、新しいバージョンの共通コードに更新してください。

于 2010-05-18T17:39:50.530 に答える