>I seem to remember that when React was first introduced, DOM mutations _were_ very expensive.
Not really. Rendering was always a heavily optimized area. The DOM, by the way, is also an in-memory data-structure, and can also be clever on how it batches draw commands to the hardware (GPU or otherwise). I was always skeptical of the performance benefits of frameworks like React for that reason.
The big benefit of UI frameworks (React or Angular) is that it organizes your code into a defined, maintainable pattern. Traditionally JavaScript has been a mess of a programming language so with raw JS/HTML development it was easy to shoot yourself in the face and do the wrong thing.
>I was under the impression that a lot of optimization was done in reaction to, err, React and similar frameworks?
That's not true. There is an enormous amount of investment being poured into the entire HTML/JS/CSS stack.
Not really. Rendering was always a heavily optimized area. The DOM, by the way, is also an in-memory data-structure, and can also be clever on how it batches draw commands to the hardware (GPU or otherwise). I was always skeptical of the performance benefits of frameworks like React for that reason.
The big benefit of UI frameworks (React or Angular) is that it organizes your code into a defined, maintainable pattern. Traditionally JavaScript has been a mess of a programming language so with raw JS/HTML development it was easy to shoot yourself in the face and do the wrong thing.
>I was under the impression that a lot of optimization was done in reaction to, err, React and similar frameworks?
That's not true. There is an enormous amount of investment being poured into the entire HTML/JS/CSS stack.