デザインの質問があります。一部の属性を共有し、GUI (Windows フォーム) とバックエンドの両方の点で他のコンポーネントが異なる複数のコンポーネントがあるアプリケーションを作成する場合、理論的にはどのようにアプローチしますか?
たとえば、4 種類の製品があるアプリケーションがあります。製品の詳細を入力するフォームはすべて、3 つの異なるフィールドを共有しています。ここまでは簡単です。基本クラスを作成し、この基本クラスから 4 つのフォームを派生させます。ただし、2 つの製品が特定の動作を共有しているとします。これは両方で同じです。もちろん、メソッドを定義するインターフェースを用意して、この 2 つの製品入力フォームにこのインターフェースを実装させることもできますが、インターフェースにはデフォルトの実装がないため、それを行うのはもったいないのではないでしょうか。各クラスに実装を提供する必要があるため、まったく同じ場合はコードの繰り返しになります。
もちろん、このメソッドを基本クラスに配置して、そこから 2 つのフォームを派生させることもできます。私のフォームが複数の共通要素を共有し、他の要素を共有していない場合、髪の毛を引き裂くことなくこれを表現するための最も健全で論理的な方法は何でしょうか?