1

Python ライブラリを拡張して、必要な機能を追加しようとしています。このライブラリは、すべてオブジェクトから派生した多数の HTML フォーム オブジェクト ( 、 、 など) をTextbox提供Dropdownします。これらすべての派生オブジェクトに属性を追加したいと考えています。適切な手続き方法は何ですか?CheckboxInput

できます:

  1. Input必要な属性を追加して、クラスの元のソース コードを変更します。
  2. Inputmy 属性を継承して追加する新しいクラスを作成しTextbox、 、Dropdown、および my newInputクラスを継承する一連の新しいクラスを作成します。
  3. Textbox属性を持つ、などの新しいクラスを作成Dropdownします。

ソリューション 1 は最も簡単でシンプルですが、本質的に間違っています。一方、他の 2 つは、このタスクが必要とするよりもはるかに多くの作業とコードの繰り返しのように見えます。

私が見逃している解決策はありますか?

4

3 に答える 3