私の目標は次のとおりです。
私はデータ分析の設定でタンパク質を扱っています。特定のタンパク質について利用可能なデータは可変です。より単純な親クラスからタンパク質クラスを構築できるようにしたいと思います。各親クラスは、私が利用できるデータレイヤーに固有のものになります。
プロジェクトが異なれば、利用可能なデータのレイヤーも異なる場合があります。特定のデータレイヤーに関連するすべての変数とメソッドを含むタンパク質の簡単なクラスを作成したいと思います。次に、任意のプロジェクトについて、関連するデータレイヤー固有のタンパク質クラスから継承するプロジェクト固有のタンパク質クラスをコンパイルできます。
さらに、各データレイヤー固有のタンパク質クラスには、同様にデータレイヤー固有のチェーンクラス、残基クラス、および原子クラスが必要です。それらはすべてビルディングブロックです。原子は、タンパク質を構築するために使用される鎖を構築するために使用される残基を構築するために使用されます。タンパク質クラスは、そのすべての原子、残基、および鎖にアクセスできる必要があります。同様に、鎖は残基と原子にアクセスする必要があります。
ベクトルとマップを使用して、関連するオブジェクトへのポインターを格納しました。関連するgetメソッドとsetメソッドもあります。タンパク質変数とゲッターおよびセッターメソッドのすべてのバージョンを提供するために、原子、残基、鎖、およびタンパク質に対して1つのテンプレートクラスを作成しました。このテンプレートクラスには、タンパク質がその鎖、残基、および原子にアクセスできるようにするベクトルとゲッターおよびセッターメソッドが含まれています。このテンプレートクラスは、すべてのデータレイヤー固有のタンパク質クラスに継承されます。
これが最善のアプローチですか?