The frameworks make everything easier, more portable, more future-proof, more extensible, and quicker to develop. The only cost is that it's all slower and less elegant.
cpu
which does abstraction and containers
OS on top
a container on top
an application toolkit
a cross platform development framework
a browser embedded inside
with containers
with a javascript vm
which runs framework
which generates their own, non-standard UI widgets.
What am I gaining? Only more layers, and possible flaws
Oh, and don't get me started about all the languages
"easier, more portable, more future-proof, more extensible, and quicker to develop"? I mean, people aren't doing it this way simply out of incompetence or for the hell of it.
It's also something of a local minimum in the platform wars. We can't have truly cross-platform everything because the platform vendors wouldn't be able to take their cut. The only reason the web survives as a cross-platform platform is it's where they've fought each other to a standstill.
The frameworks make everything easier, more portable, more future-proof, more extensible, and quicker to develop. The only cost is that it's all slower and less elegant.