I usually use two approaches:
- Extract and delegate business rules to domain classes.
- Divide the view into logically related controls, then create a new view interface for each section. Then you can divide the presenter along the same lines. If the platform you are using supports subgroup component groups (C # user controls, Delphi frames, etc.), this is a powerful way to make reusable elements.
Update
.
public class ComplexForm: Form, ISubView, IOtherSubView
{
...
}
, .
public class SubViewPresenter
{
private ISubView subView;
...
}
public class OtherSubViewPresenter
{
private IOtherSubView otherSubView;
...
}
ISubView IOtherSubView . , , . , . - , .