seungjun2.log
로그인
seungjun2.log
로그인
브라우저 렌더링
어승준
·
2023년 9월 28일
팔로우
0
10분 테코톡
브라우저 렌더링
0
10분 테코톡 정리
목록 보기
8/16
📌 웹 브라우저의 구조
▶️ User Interface
주소 표시줄, 이전/다음/새로고침 버튼 등 웹페이지를 제외하고 사용자와 상호작용하는 사용자 인터페이스
▶️ Rendering Engine
HTML과 CSS를 파싱하여 요청한 웹 페이지를 표시하는 렌더링 엔진
▶️ Browser Engine
유저 인터페이스와 렌더링 엔진을 연결하는 브라우저 엔진
▶️ Networking
각종 네트워크 요청을 수행하는 네트워킹 파트
▶️ UI Backend
체크박스나 버튼과 같은 기본적인 위젯을 그려주는 UI 백엔드 파트
▶️ Data Persistence
localStorage나 Cookie와 같이 보조 기억장치에 데이터를 저장하는 파트
▶️ Javascript Interpreter
자바스크립트 코드를 실행하는 인터프리터
📌 웹 브라우저마다 다른 렌더링 엔진
Safari는 Webkit, Firefox는 Gecko, Chrome은 Blink
📌 렌더링 엔진의 목표
HTML, CSS, JS, 이미지 등 웹페이지에 포함된 모든 요소들을 화면에 보여준다
업데이트가 필요할 때, 효율적으로 렌더링할 수 있도록, 자료 구조를 생성한다
📌 렌더링 엔진의 동작 과정
▶️ DOM Tree 생성
▶️ CSSOM Tree 생성
▶️ Render Tree 생성
▶️ Render Tree 배치 (Layout (Reflow))
▶️ Render Tree 그리기 (Paint (Repaint))
📌 UI가 업데이트되는 3가지 상황
▶️ 다시 Layout이 발생하는 경우
▶️ Paint부터 다시 발생하는 경우
▶️ 레이어의 합성만 다시 발생하는 경우
어승준
鈍筆勝聰(둔필승총) : '둔한 붓이 총명함을 이긴다' (서툴더라도 기록으로 남기는 것이 사람의 기억보다 훨씬 오래 보전된다) - 정약용
팔로우
이전 포스트
API vs Library vs Framework
다음 포스트
Git 브랜치 전략
0개의 댓글
댓글 작성