複合構造の設計に関連する問題があります。私は一般的な数学的表現を記述するExpression抽象クラスを持っています。その考え方は、式が原子表現(「x」や「3」など)や原子表現の集約(集計、プロダクト、累乗など)になりうるということです。これはコンポジットパターンによってよく記述されることが分かります。例えば、SummatoryクラスはOperationTermから継承し、Expressionクラスから継承し、Expression用語のリスト "augends"を含んでいます。複合構造の継承
これらの表現の一部をいくつかのプロパティのベースに特化しようとするまでは、すべて問題ありません。たとえば、ExpressionがMonomial TermのSummatoryで構成されている場合、クライアントコードに対して透過的な方法である種の演算(積分や微分など)を最適化するには、Polynomialとして「ラベル付け」する必要があります(Expressionオブジェクトのみを処理する必要があります)。
誰も私がこの種の構造をどのように設計できるかについてアイデアを持っています(おそらく拡張性のある方法で)?