Is there some sort of pattern for enforcing the calling of a populator method before any of the rest of the interface is used?
I say this because it is not generally a good idea to put something that has network calls or something that does large calculations in a constructor.
That work needs to be done before the other methods are used though. I was thinking that maybe a factory pattern could be used to initialize and then run the methods that are necessary to populate data. I don't really want the main class to be usable if the population doesn't happen but I don't want to check this with each method.
Is there a pattern that handles this?