# [[브라우저 렌더링 과정 최적화 및 UI 반응성 개선]] ## 📌[[ brief]] Summary 브라우저 렌더링 과정은 브라우저가 HTML, CSS, [[JavaScript]]를 파싱하여 DOM과 [[CSSOM]]을 구축하고, 이를 기반으로 렌더 트리를 생성한 뒤 화면에 픽셀을 그리는 일련의 경로([[Critical Rendering Path]])를 의미합니다 [1, 2]. 이 과정에서 발생하는 불필요한 레이아웃 재계산(Reflow)과 화면 다시 그리기(Repaint)는 성능을 저하시키는 주요 원인이 되므로 이를 최소화하는 것이 필수적입니다 [3-6]. 현대의 프론트엔드 환경에서는 이러한 비용을 줄이고 UI 반응성을 극대화하기 위해 React의 [[Virtual DOM]], Fiber 아키텍처, 자동 배칭([[Automatic Batching]]), 그리고 [[React Compiler]]와 같은 고도화된 최적화 기술들이 활용되고 있습니다 [7-11]. ## 📖 Core Content **1. 브라우저 렌더링의 핵심 경로 (Critical Rendering Path)** * **파싱 및 트리 구축:** 브라우저는 서버로부터 받은 HTML을 점진적으로 파싱하여 문서의 구조를 나타내는 [[DOM(Document Object Model)]] 트리를 구축합니다 [1, 12-14]. 동시에 CSS를 파싱하여 스타일 정보를 담은 [[CSSOM(CSS Object Model)]] 트리를 생성하는데, CSSOM은 구축이 완료될 때까지 렌더링을 차단(Render-[[Blocking]])하는 특성을 가집니다 [15, 16]. * **렌더 트리([[Render Tree]]) 생성:** DOM과 CSSOM이 준비되면, 브라우저는 화면에 시각적으로 표시될 노드들만 모아 렌더 트리를 합성합니다 [2, 17, 18]. (`