I suggest to create `_controls` "hash" upfront. Since `isControlVisible` is a frequently-called method and it's crucial for it to be fast.

It could just be `return this._controls[controlName].visible`.