基本的に非常によく似た3つのクラスがあります。
- アップロードしたファイルの記録を保存します。
- ファイルを移動してアップロードします。
- レコードのステータスをアクティブまたは取り消しに設定します。
クラスの1つには、追加の更新メソッドがあります。一部のフィールドは共通ですが、一部のテーブルには余分なフィールドがいくつかあるため、各クラスはデータベース内の異なるテーブルを参照します。
かなり多くの機能が一般的であるため、多くの機能を複製するよりも、基本クラスを拡張する方がよいと思います。
私の唯一の喧嘩は、基本クラスの構築関数です。各テーブルの一部のフィールドは追加であるため、これにより基本クラスが妨げられるのではないかと心配しています。
抽象クラスを使用することを考えました。これにより、ほとんどのものを1つの場所に維持しながら、機能を拡張できるようになります。しかし、それは構成の問題です。構成のない抽象クラスを持つことはできますか?
何か案は?