브라우저의 주요 기능
사용자가 선택한 자원을 서버에 요청하고 브라우저에 표시하는 것
자원은 HTML 문서, PDF, 이미지 등이 있다.
브라우저는 웹 표준화 기구(W3C/World Wide Web Consortium)에서 정한 명세에 따라 HTML 파일을 해석해서 표시한다. (예전과는 다르게 대부분의 브라우저가 표준 명세를 따라 호환성이 좋다.)
브라우저의 UI
브라우저의 사용자 인터페이스(User Interface)는 일반적으로
URI(Uniform Resourse Idenrifier/자원의 주소)를 입력할 수 있는 주소 표시 줄
이전 버튼과 다음 버튼
북마크
새로 고침 버튼과 현재 문서의 로드를 중단할 수 있는 정지 버튼
홈 버튼
의 요소를 가지고 있다.
HTML5 명세는 주소 표시줄, 상태 표시줄, 도구 모음과 같은 일반적인 요소를 제외하고 브라우저의 필수 UI를 정의하지 않았다.
브라우저의 구성 요소
랜더링 엔진
렌더링 엔진은 요청 받은 내용을 브라우저 화면에 표시해주는 역할을 한다.
일반적으로는 HTML 문서를 표시하지만, XML, 이미지도 가능하며 플러그인/확장 기능을 통해 PDF 같은 유형의 문서 또한 표시할 수 있다.
렌더링 엔진의 동작 과정
렌더링 엔진은 요청한 문서의 내용을 얻는 것 부터가 시작이다. 그 내용은 통신에서 온다.
동작 과정은 기본적으로 파싱 -> 빌드 -> 배치 -> 페인팅
렌더링 엔진은 더 나은 UX를 위해 모든 HTML이 파싱될 때까지 기다리지 않고 배치와 그리기 과정을 시작한다.
네트워크에서 나머지 내용이 전송되기를 기다리는 동시에 받은 내용의 일부를 먼저 화면에 표시한다.
[참고 및 출처]
https://d2.naver.com/helloworld/59361
https://another-light.tistory.com/42?category=844048