• 베스트
  • 소득공제
  • 무료배송

밑바닥부터 시작하는 웹 브라우저 - 페이지 로딩부터 렌더링까지 브라우저 개발자들이 풀어 쓴 내부 원리

  • 파벨 판체카,크리스 해럴슨
  • 이형욱,최병운
  • 한빛미디어
  • 2025년 09월 15일
사용자 평점
0리뷰 0개
10%40,500원45,000원
적립금
2,250원 (5% 적립)
추가 적립 안내
  • 5만원 이상 결제 시 (*배송비 제외)

    정가제FREE(상품/사은품) 금액이
    2,000원 이상이면 2,000원 추가적립

  • 10만원 이상 결제 시 (*배송비 제외)

    정가제FREE(상품/사은품) 금액이
    2,000원 이상이면 2,000원 추가적립

    정가제FREE(상품/사은품) 금액이
    5,000원 이상이면 5,000원 추가적립

회원가입 시 적립금 즉시 지급!

배송비
무료 (해외배송의 경우 지역에 따라 상이)

배송안내

배송비 안내
  • 1만원 이상 주문 시 무료배송 입니다.
  • 주문하신 상품을 해외로 배송 하시는 경우에는 별도의 항공료 가 부과됩니다
서울특별시 강남구 강남대로 542(논현동, 영풍빌딩)
지금 주문하면 10/13(화) 출고 가능
택배보다 빠른, 나우드림
상품 규격 정보
상품상세정보
ISBNISBN-13 : 9791169214353
쪽수632쪽
크기기타 규격
제품구성단행본
이 책이 속한 분야
  • 컴퓨터/IT > 인터넷 > 웹프로그래밍(웹디자인등)
관련 이벤트

AI추천 이유

책 소개

웹 브라우저! 쌓고, 뜯고, 이해하라

하나씩 이해하는 웹의 작동 원리

 

크롬, 파이어폭스, 브레이브, 웨일 같은 웹 브라우저는 겉으로는 단순해 보이지만, 그 밑에는 무려 1천만 줄에 달하는 코드가 숨어 있습니다. 이 책은 웹 브라우저가 실제로 어떻게 동작하는지 그리고 그 구조와 원리가 웹 개발자와 소프트웨어 엔지니어들에게 어떤 영향을 미치는지 쉽고 명확하게 설명합니다.

 

유타 대학교 교수이자 웹 브라우저 연구자인 파벨 판체카, 구글 크롬의 렌더링 엔진 리더 크리스 해럴슨이 실제 브라우저를 설계한 풍부한 경험과 통찰을 이 책에 담았습니다. DNS와 HTTP 요청, HTML 파싱, 화면 렌더링, 인터랙션 그리고 최신 브라우저의 고급 기능까지! 각 장을 따라가며 파이썬으로 ‘나만의 브라우저’를 직접 만들어 보세요. 프로그래밍 경험이 많지 않아도 이 책을 따라 핵심 원리부터 이해한다면, 인터넷에서 웹페이지가 열리는 모든 과정을 직접 확인할 수 있습니다.

목차

[목 차]

PROLOGUE 브라우저와 나

 

PART 1 페이지 로딩

 

CHAPTER 1 웹페이지 다운로드

_1.1 서버에 연결하기

_1.2 정보 요청하기

_1.3 서버의 응답

_1.4 파이썬을 통한 텔넷

_1.5 요청과 응답

_1.6 HTML 표시하기

_1.7 암호화된 연결

_1.8 요약

_1.9 연습 문제

 

CHAPTER 2 화면에 그리기

_2.1 창 만들기

_2.2 창에 그리기

_2.3 텍스트 배치하기

_2.4 텍스트 스크롤하기

_2.5 더 빠른 렌더링

_2.6 요약

_2.7 연습 문제

 

CHAPTER 3 텍스트 포맷팅하기

_3.1 폰트(서체)란?

_3.2 텍스트 측정하기

_3.3 한 단어씩 처리하기

_3.4 텍스트에 스타일 주기

_3.5 레이아웃 객체

_3.6 다양한 크기의 텍스트

_3.7 폰트 캐싱

_3.8 요약

_3.9 연습 문제

 

PART 2 문서 표시

 

CHAPTER 4 문서 트리 구축하기

_4.1 노드 트리

_4.2 트리 구축하기

_4.3 파서 디버깅하기

_4.4 셀프 클로징 태그

_4.5 노드 트리 사용하기

_4.6 페이지 오류 다루기

_4.7 요약

_4.8 연습 문제

 

CHAPTER 5 페이지 레이아웃

_5.1 레이아웃 트리

_5.2 블록 레이아웃

_5.3 크기와 위치

_5.4 재귀 페인팅

_5.5 배경 그리기

_5.6 요약

_5.7 연습 문제

 

CHAPTER 6 개발자 스타일 적용하기

_6.1 함수를 사용한 파싱

_6.2 style 어트리뷰트

_6.3 셀렉터

_6.4 스타일시트 적용하기

_6.5 캐스케이딩

_6.6 상속된 스타일

_6.7 폰트 프로퍼티

_6.8 요약

_6.9 연습 문제

 

CHAPTER 7 버튼과 링크 처리하기

_7.1 링크는 어디에 있는가?

_7.2 라인 레이아웃

_7.3 클릭 처리

_7.4 탭 브라우징

_7.5 브라우저 크롬

_7.6 히스토리 탐색

_7.7 URL 입력하기

_7.8 요약

_7.9 연습 문제

 

PART 3 애플리케이션 실행

 

CHAPTER 8 서버로 정보 보내기

_8.1 폼의 동작 방식

_8.2 위젯을 렌더링하기

_8.3 위젯과 상호작용하기

_8.4 폼을 제출하기

_8.5 웹 앱의 동작

_8.6 POST 요청 수신하기

_8.7 웹페이지 생성하기

_8.8 요약

_8.9 연습 문제

 

CHAPTER 9 대화형 스크립트 실행하기

_9.1 DukPy 설치하기

_9.2 자바스크립트 코드 실행하기

_9.3 함수 익스포트하기

_9.4 크래시 처리하기

_9.5 핸들 반환하기

_9.6 핸들 래핑

_9.7 이벤트 처리

_9.8 DOM 수정하기

_9.9 이벤트 기본값

_9.10 요약

_9.11 연습 문제

 

CHAPTER 10 사용자 데이터 보호하기

_10.1 쿠키

_10.2 로그인 시스템

_10.3 쿠키 구현하기

_10.4 교차 사이트 요청

_10.5 동일 출처 정책

_10.6 교차 사이트 요청 위조

_10.7 SameSite 쿠키

_10.8 교차 사이트 스크립팅

_10.9 콘텐츠 보안 정책

_10.10 요약

_10.11 연습 문제

 

PART 4 모던 브라우저 기능

 

CHAPTER 11 시각적 효과

_11.1 Skia와 SDL 설치하기

_11.2 SDL을 이용하여 윈도우 만들기

_11.3 서피스와 픽셀

_11.4 Skia를 이용한 래스터화

_11.5 브라우저 컴포지팅

_11.6 투명도

_11.7 블렌딩과 스태킹

_11.8 픽셀 합성

_11.9 클리핑과 마스킹

_11.10 서피스 사용 최적화하기

_11.11 요약

_11.12 연습 문제

 

CHAPTER 12 태스크와 스레드 스케줄링

_12.1 태스크와 태스크 큐

_12.2 타이머와 setTimeout

_12.3 수명이 긴 스레드

_12.4 렌더링 주기

_12.5 더티 비트를 통한 최적화

_12.6 프레임 애니메이션

_12.7 렌더링 프로파일링

_12.8 두 개의 스레드

_12.9 디스플레이 리스트 커밋하기

_12.10 스레드 프로파일링

_12.11 스레드 기반 스크롤

_12.12 스레드기반 스타일과 레이아웃

_12.13 요약

_12.14 연습 문제

 

CHAPTER 13 애니메이션과 컴포지팅

_13.1 자바스크립트 애니메이션

_13.2 GPU 가속

_13.3 컴포지팅

_13.4 컴포지팅 리프 노드

_13.5 CSS 트랜지션

_13.6 컴포지트 애니메이션

_13.7 컴포지팅 최적화

_13.8 오버랩과 트랜스폼

_13.9 요약

_13.10 연습 문제

 

CHAPTER 14 콘텐츠 접근성 향상

_14.1 접근성이란?

_14.2 확대/축소

_14.3 다크 모드

_14.4 다크 모드 커스터마이징

_14.5 키보드 내비게이션

_14.6 포커스 표시

_14.7 접근성 트리

_14.8 스크린 리더

_14.9 접근성 알림

_14.10 음성과 시각을 통한 상호작용

_14.11 요약

_14.12 연습 문제

 

CHAPTER 15 삽입된 콘텐츠 지원

_15.1 이미지

_15.2 임베디드 레이아웃

_15.3 이미지 크기 수정

_15.4 인터랙티브 위젯

_15.5 iframe 렌더링

_15.6 iframe 인풋 이벤트

_15.7 iframe 스크립트

_15.8 프레임간 통신

_15.9 격리와 타이밍

_15.10 요약

_15.11 연습 문제

 

CHAPTER 16 이전 결과 재사용

_16.1 콘텐츠 수정하기

_16.2 왜 무효화일까요?

_16.3 멱등성

_16.4 종속성

_16.5 보호된 필드

_16.6 재귀적 무효화

_16.7 width 보호하기

_16.8 인라인 엘리먼트를 위한 width

_16.9 레이아웃 필드 무효화

_16.10 인라인 레이아웃을 보호하기

_16.11 변화가 없는 업데이트 건너뛰기

_16.12 탐색 건너뛰기

_16.13 세분화한 스타일 무효화

_16.14 종속성 분석하기

_16.15 요약

_16.16 연습 문제

 

CHAPTER 17 이 책에서 다루지 않은 내용

_17.1 자바스크립트 실행

_17.2 텍스트 & 그래픽 렌더링

_17.3 커넥션 보안과 프라이버시

_17.4 네트워크 캐싱과 미디어

_17.5 더 멋진 레이아웃 모드

_17.6 브라우저 UI와 개발자 도구

_17.7 테스트

 

EPILOGUE 변화하는 환경

출판사 서평



대상 독자

● 서비스의 성능을 개선하려는 웹 프런트엔드 개발자

● 네트워크와 웹 브라우저의 기본 원리를 알고 싶은 학생

● 파이썬으로 눈에 보이는 결과물을 만들고 싶은 개발 초심자

 

한 조각씩 파헤치는 웹 브라우저의 숨겨진 메커니즘

 

구글 크롬, 파이어폭스, 엣지... 지금 우리가 사용하는 웹 브라우저의 코드는 최소 1,000만 줄! 이 복잡하고 거대한 웹 브라우저의 '숨겨진 내부'를 직접 탐구할 기회가 찾아왔습니다. 이 책은 수많은 웹 개발자와 학생에게 여전히 미지의 영역으로 남아 있는 브라우저의 동작 원리를 명쾌하게 설명하는 독보적인 안내서입니다.

단순한 이론 학습에 그치지 않고, 파이썬 코드로 나만의 웹 브라우저를 직접 작성하며 밑바닥부터 살펴봅니다. 간단한 기능부터 시작해 한 조각씩 만들어 방대한 실제 웹 브라우저의 작동 원리를 꿰뚫어 볼 수 있습니다.

실제 웹 브라우저 개발에 참여한 저자와 역자의 안내를 따라, 여러분만의 브라우저를 만들어 보세요.

 

이 책의 내용

● 페이지 로딩부터 렌더링까지 웹 사이트를 표시하는 전체 과정

● 크롬, 파이어폭스, 웨일 등 모던 브라우저의 아키텍처 이해

● 보안 및 성능 최적화

● 웹 표준과 소프트웨어 공학적 사고

● 접근성 및 시각 효과

저자 소개
저자 : 파벨 판체카,크리스 해럴슨
도서리뷰

이 책을 읽고 어떤 느낌을 받으셨나요?
리뷰를 남기고 다른 독자들과 함께 공유해보세요.

안내 열기구매(배송/수령완료) 후 리뷰를 작성하시면 적립금 300원을 드려요!

등록된 리뷰가 없습니다

첫번째 리뷰어가 되어주세요

교환/반품/환불
반품/교환방법
  • 마이페이지 > 주문관리 > 주문/배송조회 > 주문조회 후  [1:1상담신청]  또는 고객센터 (1544-9020)
  • ※ 오픈마켓, 해외배송 주문상품 문의 시 [1:1상담신청] 또는 고객센터 (1544-9020)
반품/교환 가능기간
  • 변심반품의 경우 수령 후 7일 이내
  • 상품의 결함 및 계약내용과 다를 경우 문제점 발견 후 30일 이내
반품/교환비용
  • 단순변심 혹은 구매착오로 인한 반품/교환은 반송료 고객 부담
  • 해외직배송 도서 구매 후 단순변심에 의한 취소 및 반품 시 도서판매가의 20% 수수료 부과
반품/교환 불가 사유
  • 소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우
  • 소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우
    예) 만화, 잡지, 수험서 및 문제집류
  • 복제가 가능한 상품 등의 포장을 훼손한 경우
    예) 음반/DVD/비디오, 소프트웨어, 만화책, 잡지, 영상 화보집
  • 소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우
  • 디지털 컨텐츠인 eBook, 오디오북 등을 1회 이상 다운로드를 받았을 경우
  • 시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
  • 전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에 해당되는 경우
상품 품절
  • 공급사(출판사) 재고 사정에 의해 품절/지연될 수 있으며, 품절 시 관련 사항에 대해서는 이메일과 문자로 안내드리겠습니다.
소비자 피해보상
환불지연에 따른 배상
  • 상품의 불량에 의한 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은 소비자분쟁 해결 기준 (공정거래위원회 고시)에 준하여 처리됨
  • 대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의 소비자 보호에 관한 법률에 따라 처리함

매장에서 사용할 수 있는 바코드가 있어요!