I seem to remember Greg O’Lone saying on this forum somewhere that all implicit instances of WebPages are loaded into memory when the app starts, not just when they’re called. Is this correct?
Yes. You can see every implicit instance page by looking at the DOM.
Thanks, Tim. Can excessive WebPage implicit instances affect traffic to and from the browser? Somehow I would think this is only dependent on what is Shown. I’m trying to see if implicit instances of WebPages affects this statement from a fellow developer:
From the quote it doesn’t sound like it would cause any more traffic than non-implicit, but I don’t know the web internals that well. @Greg O’Lone would have to comment.
However, having them all available but hidden in the browser is much less secure if you’re doing something where you need to control what the user has access to. For example, a login-secured app, or a secured downloads page. Basically, if the page it’s in the browser, the user can make the page visible themselves.
Indeed for apps that require security it is way better to switch off implicit instance and instantiate the webpages only when needed. Also, make sure to close the webpages after displaying a new one, otherwise it stays around as well.
Implicit Instances, in my opinion, are evil. Convenient, but still evil. They can lead to some very hard to find bugs. I wrote about this a year ago at http://www.bkeeneybriefs.com/2016/01/implicitinstance-is-evil/. I generally turn off implicit instance on my web pages and windows.
The article is mainly about Windows in desktop, but I believe that most of my reasoning is still valid for web.
Except that WebPage implicit instance does not work quite the same. Calling a property or control in another Webpage that is not displayed does not instantiate it the same way as windows.
Yet, I agree with you : to have full control on WebPages as well as Windows, it is much better to switch off implicit instantiation.