どの原則、コードの品質、プラクティス、アプローチ、言語またはフレームワークの機能が、より広い範囲のケースで関数、クラスなどを効果的に再利用するのに役立ちますか. すべての状況は興味深いものです。コードの実装とインターフェイスの両方を変更して再利用を有効化/改善するか、実装のみを変更するか、まったく変更しないかのいずれかです。再利用の有効性を示す重要な指標は次のとおりです (私の場合)。
- 実装と保守の労力をどれだけ削減できるか
- アプリケーションの品質は低下しません
- 複雑さがどれだけ軽減されるか
(すべて下位レベルからの再実装と比較)。
PS。可能であれば、回答ごとに 1 つの要素を指定し、それがあなたのケースでどのように役立つかを説明してください。