goal: make component tree creation fast as possible and avoid unnecessary instances
some components instantialize attributes direct in field or in constructor. In many cases it is not necessary, because those HashMap/Set instances are not used in current request/response - it depends on use case.
Example: UIViewRoot.listenerSuccessMap: lazy init is very suitable, because many view have no phase listener.
Check all components: candidates are "smarter" components like UIDate or UIInput