in reply to OOP - redefining a class
$page = A:B:C->new(); $page->check_if_i_should_be_a_subclass_instead(); $page->render(); # render method from A:B:C or A:B:C:D1 based on ab +ove method result
This makes me think that what you might want is to separate out the rendering stuff into separate classes and then create your A::B::C object, passing in an appropriate rendering object.
my $renderer = Renderer::D->new; my $page = A::B::C->new( renderer => $renderer );
|
|---|