Basically, this is apparently a template for formalizing branching in a task-based user interface.
Say you have a checkmark form for an additional function, but this function requires additional information that is too complicated to fit on one page. Using this template allows you to delegate the collection of information to another component.
In addition, there is a type of strategy template, because you can have different subsystems that can collect the same information, all of which inherit the PageFunction (of T) function, so the code that actually calls them should not know any details about it .
These are just some ideas, I did not quite understand.
source share