Moin,
Redundanzen vermeiden: Eine Klasse, die einen Artikel in einem Shop präsentiert und das Einfügen in den Warenkorb ermöglicht, schreibe ich nur einmal, alles was die Artikel unterscheidet wird über Attribute geregelt.
Wenn so unterschiedliche Dinge wie Shop-Artikel nur ein paar wenige Merkmale gemeinsam haben sollen, wäre statt einer Basisklasse eher ein Interface angebracht, das diese Merkmale definiert, die für den Warenkorb interessant sind.
In meinem FW hat die Basisklasse mit einer Warenkorb-Klasse oder mit einer Artikel-Klasse gar nichts zu tun. Schnittstellen werden erst in der jeweiligen Anwendungs- bzw. Responseklasse angesprochen, nämlich dann, wenn sie gebraucht werden.
Schönen Sonntag,
Hotti