🗣️ "웹 브라우저가 웹 페이지를 렌더링 하는 과정을 설명해보세요"

2024. 7. 31. 13:30·프론트엔드 개발자로 취업준비/기술 면접
728x90

🗣️ "웹 브라우저가 웹 페이지를 렌더링 하는 과정을 설명해보세요"

 

저라면 크리티컬 랜더링 패스를 가져와서 설명할 것 같습니다.

더보기

크리티컬 랜더링 패스(Critical Rendering Path)?

페이지의 콘텐츠가 사용자에게 빠르게 표시되도록 하는데 중요한 렌더링 프로세스를 설명하는 개념입니다. 이 패스는 페이지가 화면에 렌더링되는 과정을 최적화하여 사용자가 페이지를 더 빨리 볼 수 있도록 합니다.

 

답변:

웹 브라우저가 웹 페이지를 렌더링하는 과정은 크리티컬 랜더링 패스를 기준으로 설명할 수 있습니다. 과정을 설명드리겠습니다.

먼저 페이지를 요청합니다. 사용자가 웹 페이지를 요청하면 브라우저는 서버에 요청을 보내고 HTML 문서를 받아옵니다.

그리고 HTML파싱이 진행됩니다. 브라우저는 이 HTML문서를 읽어서 DOM 트리를 생성합니다. 이 트리에는 페이지의 구조와 콘텐츠가 들어갑니다.

차례로 CSS를 파싱합니다. HTML과 함께 로드된 CSS 파일을 파싱하여 CSSOM트리를 생성합니다. 여기에는 각 요소에 적용될 스타일 정보가 들어가 있습니다.

이후 랜더트리를 생성합니다. 랜더트리는 DOM과 CSSOM이 결합된 트리로 실제 화면에 보여질 요소들만 포함됩니다.

이후 레이아웃을 계산하고 화면에 출력되어 화면이 구성됩니다.

728x90

'프론트엔드 개발자로 취업준비 > 기술 면접' 카테고리의 다른 글

🗣️ "라이브러리와 프레임워크에 대해 설명해보세요"  (0) 2024.07.31
🗣️ "개발자에게 가장 중요한 능력, 역량은 무엇이라고 생각하세요?"  (0) 2024.07.31
🗣️ "호이스팅이 뭔지 설명하세요"  (0) 2024.07.27
🗣️ "var, let, const의 차이가 무엇인가요?"  (0) 2024.07.27
🗣️ "스크립트 태그 속성 중에 async vs defer 차이가 뭐에요?"  (0) 2024.07.27
'프론트엔드 개발자로 취업준비/기술 면접' 카테고리의 다른 글
  • 🗣️ "라이브러리와 프레임워크에 대해 설명해보세요"
  • 🗣️ "개발자에게 가장 중요한 능력, 역량은 무엇이라고 생각하세요?"
  • 🗣️ "호이스팅이 뭔지 설명하세요"
  • 🗣️ "var, let, const의 차이가 무엇인가요?"
튼튼발자
튼튼발자
프론트엔드 개발자입니다. 헬스를 가끔해서인지 몸이 튼튼한거 같습니다. 그래서 튼튼한 개발자 => 튼튼발자입니다. 프론트엔드 및 관련 개발 내용 블로그 글로 정리해서 올려둡니다.
    250x250
  • 튼튼발자
    튼튼발자
    튼튼발자
  • 전체
    오늘
    어제
    • 분류 전체보기 (192)
      • 튼튼발자의 끄적끄적 (10)
      • 웹개발 (94)
        • HTML (5)
        • CSS (2)
        • JavaScript (40)
        • TypeScript (5)
        • REACT (22)
        • Next.js (13)
        • GIt (7)
      • 기타 (3)
        • 일상 (3)
      • 프로젝트 (27)
        • Componique: UI 컴포넌트 라이브러리 (18)
        • GitHub Profile Viewer (8)
        • 잇핏 (1)
      • 프론트엔드 개발자로 취업준비 (1)
        • 기술 면접 (7)
        • 코딩 테스트 준비하기 (0)
        • 자기소개서&지원서&이력서 (0)
      • 컴퓨터과학 (12)
        • 운영체제 (6)
        • 알고리즘 (6)
      • 전공 공부 (37)
        • AI(인공지능) (2)
        • 컴퓨터네트워크 (19)
        • 네트워크프로그래밍 (3)
        • SW소프트웨어응용설계 (7)
        • 클라우드컴퓨팅 (3)
        • 웹서비스프로그래밍 (3)
      • PT (0)
      • 취준일기 (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    네트워크
    github
    웹개발
    데이터전송
    TCP
    프론트엔드
    JavaScript
    프로그래밍
    tailwind
    ui컴포넌트
    componique
    react
    트랜스포트계층
    코딩
    NextJs
    자바스크립트
    상태관리
    프론트엔드개발
    JS
    리액트
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
튼튼발자
🗣️ "웹 브라우저가 웹 페이지를 렌더링 하는 과정을 설명해보세요"
상단으로

티스토리툴바