Ich habe eine Klasse, die ziemlich groß ist, und ich will wichtige Teile spalten, aber ich weiß nicht, ob mein Code-DesignKlassen, die sich Code-Design Referenz
class Something
{
public:
void draw()
{
m_drawer.draw();
}
private:
SomethingDrawer m_drawer;
}
class SomethingDrawer
{
public:
SomethingDrawer(Something* something) :
m_something(something)
{}
void draw()
{
drawSomethingObject();
drawSomeOtherObject();
}
private:
void drawSomethingObject();
void drawSomeOtherObject();
Something* m_something;
}
bevorzugt wird, oder sollte ich nur passieren die Objekte, die zum Zeichnen auf drawSomethingObject/drawSomeOtherObject
benötigt werden, ohne dass SomethingDrawer einen Verweis auf Something benötigt.