arrow_back How we serve multiple clients through single react app?
Virtual DOM, Real Problems
Submitted by Navin Pai (@lifeofnavin) on Thursday, 15 June 2017
Section: Crisp Talk Technical level: Intermediate
Virtual DOM has become the primary method of abstracting the DOM. However, the lack of clarity in understanding how the virtual DOM actually works leads to multiple inefficient techniques used when coding applications which are meant to be performant at scale.
In this talk, we plan to talk about how the virtual DOM works, how is it different from Shadow DOM used by frameworks like Polymer (Hint: almost completely), What are the differences in Virtual DOM implementations in different popular frameworks (Psst… Virtual DOM is NOT a standard), how to performance test an app that massively uses virtual DOM manipulations at scale, and tips to ensure how to ensure you get the maximum value out of your virtual DOM implementation, no matter what framework you use underneath.
- What is Virtual DOM (and why it is so cool!) - 3 mins
- Differences between Virtual DOM models used by different frameworks - 5 mins
- I use a Virtual DOM framework, but my app is so slow… Why? - 7 mins (includes 3 mins of performance testing interspersed)
- Quick Tips to ensure you always get the most out of your virtual DOM implementation (2 mins)
Basic understanding of the DOM. Experience with a framework which uses Virtual DOM is an added bonus, but not required.
Navin is a Full stack developer who goes about building cool stuff at Bloomreach Inc. He has worked with front end technologies for over a decade, from projects ranging from toy samples at hackathons to enterprise software with rigid requirements of performance. He has dabbled around with frameworks ranging from JQuery (which he loved back in the hey day), AngularJS (which he adored), React (which he dislikes), Vue (which is his new sweetheart) to Mithril (which he is hoping gains popularity). He is an open source contributer. In his free time, he enjoys talking about himself from a third person perspective.