rendering
server-side rendering: When the browser fetches the page over HTTP, it immediately gets back HTML describing the page.
good
- The content is visible to search engine like Google
- The page loads faster (relatively, may effect t_done). There's no "white page" while the browser downloads the rendering code and data and the runs the code.
- It maintains the idea that pages are documents.
- performance is predictable.
bad
client-side rendering: JavaScript running in the browser produces HTML or manipulates the DOM.
goood
- can update the screen instantly when event occurs - no need to call & wait for server's response to re-render & update the page
- improve performance - when you get enough resources, i.e., web pages & templates, no need to call server and fetch pages again.
bad
- Loading spinner - people need to wait till they get the data
- unpredictable performance - heavily relied on what devices people use.