4

OldBaseClassを継承するLegacyClassクラスがあります。

その間に新しいクラスを導入するための変更を検討しています。

LegacyClassはNewBaseClassを継承し、NewBaseClassはOldBaseClassを継承します。

NewBaseClassもOldBaseClassも抽象的ではありません。この変更により、LegacyClassに依存する(場合によっては継承する)古いMSILアセンブリのアセンブリの互換性が失われますか?

4

1 に答える 1

3

この回答に記載されているように、既存の動作を実際に変更しない限り (より具体的には、その動作がどのように変更されたかによって異なります)、問題ありません。新しいクラスが新しい (個別の) メソッド/プロパティを追加するだけであれば、問題ありません。ただし、通常の場合と同様に、場合によって異なります。次の質問を検討してください。

  • アセンブリを使用しているのは誰ですか (部外者または組織内のユーザーのみ)?
  • クライアントを再コンパイルできますか?
  • それらのクライアントで自動または手動の単体テストを実行できますか?
  • LegacyClass の機能を追加または変更することを目指していますか?
于 2012-06-12T05:54:06.223 に答える