I don't know how polymer does data binding.
I suspect it is using some time of "onChange" listener.
The more elements that there are to bind increases the overhead of supporting the two-way sync process.
I am wondering if there is not some waste in all that monitoring. In my experience there are two types
of data values.
a. Constant - these are set at the time of the instance instantiation and do not change during the remaining time of execution.
b. non-constant - these change when the end user interacts with the application.
It seems that polymer only provides support for the type-b variables. Yet because of that, as the number of variables
increases, performance can suffer. If there was a way to identify type-a (constants), and then only bind those values
once (after ready?) without change monitoring, then the amount of monitoring for change may have a smaller impact.
Or maybe there is a type-c variable which is only changed by some javascript in a callback routine. Then provide
a function that re-values those changed variables. And have the callback script call it after it makes a change.
That way the only monitored variables would be those that the end user can change.