ファクトリデザインパターンを使用した単純なアプリケーションを設計しています。私は次の->この<-例です。私が疑問に思っているのは、ファクトリークラスを拡張可能にするにはどうすればよいですか?与えられた例では、Macボタンを追加したい場合は、ファクトリクラスコードを変更する必要があります。これが不要になるようにするにはどうすればよいですか?
元のメソッドをオーバーライドせずにファクトリクラスの機能を拡張して、その機能を失う方法はありますか?または、オブジェクトの作成を完全に動的にして(オーバーロードされたメソッドを使用して?)、ファクトリクラスが条件ステートメントに依存する必要がないようにする方法があるのでしょうか。