메뉴 바로가기 검색 및 카테고리 바로가기 본문 바로가기
정가 36,000원
판매가
36,000원
총 결제 금액 36,000원
dropdown arrow
  • 소장/대여 옵션 선택
  • 소장
  • 365일
    30% 할인
  • 180일
    40% 할인
  • 90일
    50% 할인
  • 30일
    60% 할인

마이한빛 > MY 콘텐츠에서 웹뷰어로 바로 이용가능한 상품이며 배송되지 않습니다.

대여 가능

전자책

종이책

밑바닥부터 시작하는 웹 브라우저

페이지 로딩부터 렌더링까지 브라우저 개발자들이 풀어 쓴 내부 원리

  • 저자파벨 판체카 , 크리스 해럴슨
  • 번역이형욱 , 최병운
  • 출간2025-09-15
  • 페이지632 쪽
  • eISBN9791169219860
  • 물류코드11986
  • 난이도
    초급 초중급 중급 중고급 고급
5점 (2명)
좋아요 : 3

웹 브라우저! 쌓고, 뜯고, 이해하라
하나씩 이해하는 웹의 작동 원리

 

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

 

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

 

대상 독자

  • 서비스의 성능을 개선하려는 웹 프런트엔드 개발자
  • 네트워크와 웹 브라우저의 기본 원리를 알고 싶은 학생
  • 파이썬으로 눈에 보이는 결과물을 만들고 싶은 개발 초심자

 

파벨 판체카 저자

파벨 판체카

유타 대학교 컴퓨팅 학부의 교수이다. 웹페이지 레이아웃과 웹 브라우저 전반을 연구하고 있다. 2019년 워싱턴 대학교에서 컴퓨터 과학 박사 학위를 받았다.

크리스 해럴슨 저자

크리스 해럴슨

구글의 수석 소프트웨어 엔지니어로, Blink 렌더링 팀(https://www.chromium.org/teams/rendering)을 이끌고 있다. 구글 맵스의 수석 엔지니어로 활동했으며, 구글 트랜짓(https://google.com/transit)의 초기 창립 멤버였다. 2004년 UC 버클리에서 컴퓨터 과학 박사 학위를 받았다.

이형욱 역자

이형욱

네이버 웨일 팀에서 웨일 브라우저와 웨일 OS 개발 팀을 이끌고 있다. 20년 넘게 브라우저 기술 연구 및 개발 업무를 담당하고 있으며, 오픈소스 웹킷(WebKit) 커미터와 크로미움(Chromium) 컨트리뷰터로 활동하고 있다. 브라우저 렌더링 아키텍처와 관련 기술에 관심이 많다.

최병운 역자

최병운

네이버에서 10년째 웨일 개발에 참여하고 있다. 어쩌다가 브라우저 개발자가 되어 약 17년간 브라우저를 개발하고 있다. 은퇴 후 사람들과 어울리며 자유롭게 개발하며 살고 싶은 아직 40대인 파이어족 꿈나무다.

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만 줄! 이 복잡하고 거대한 웹 브라우저의 '숨겨진 내부'를 직접 탐구할 기회가 찾아왔습니다. 이 책은 수많은 웹 개발자와 학생에게 여전히 미지의 영역으로 남아 있는 브라우저의 동작 원리를 명쾌하게 설명하는 독보적인 안내서입니다.
 

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

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

이 책의 내용

  • 페이지 로딩부터 렌더링까지 웹 사이트를 표시하는 전체 과정
  • 크롬, 파이어폭스, 웨일 등 모던 브라우저의 아키텍처 이해
  • 보안 및 성능 최적화
  • 웹 표준과 소프트웨어 공학적 사고
  • 접근성 및 시각 효과


"한빛미디어 서평단 <나는리뷰어다> 활동을 위해서 책을 협찬 받아 작성된 서평입니다."

 


 

웹 브라우저. 우리가 매일 사용하는 가장 익숙한 도구이지만, 정작 그 속이 어떻게 작동하는지는 생각보다 잘 알지 못한다.

 

이번에 읽은 "밑바닥부터 시작하는 웹 브라우저"는 그런 궁금증의 심장을 직접 열어보는 책이다.

1천만 줄이 넘는 코드로 이루어진 거대한 시스템 속으로, 한 줄 한 줄 따라가며 그 구조를 이해하게 만든다.
 

 

이 책은 이론서는 아니지만 월드와이드웹(WWW)과 웹 브라우저의 태동부터 개념적인 부분을 먼저 소개하고 있다. 파이썬으로 직접 브라우저를 구현하면서, 우리가 평소 무심히 지나치던 웹의 작동 원리를 손끝으로 체험하게 한다. 각 과정을 통해 HTML을 다운로드하고 텍스트를 그려보고 스크롤을 구현하며, 점차 “브라우저”라는 유기체가 만들어지는 과정을 밟아간다.

 

웹 브라우저는 HTML 태그, 지시어, JavaScript, CSS 등으로 구성된 요소들을 해석해 화면에 렌더링한다. 이 과정에서 서버와 클라이언트 간의 요청과 응답, 이벤트 처리, 값의 변화를 연결하며 기술적 상호작용을 완성한다.
 

 

Part 1 페이지 로딩에서는 서버에 연결하고 데이터를 받아오는 흐름을 다룬다. DNS, HTTP 요청, 그리고 암호화된 연결까지 — 평소 개발자가 한 줄의 코드로 호출하던 네트워크 동작의 밑바탕을 낱낱이 보여준다. 이후 "화면에 그리기"와 "텍스트 포맷팅"에서는 창을 띄우고 글자를 배치하며, 눈에 보이는 렌더링의 첫 걸음을 체험한다.

 

Part 2 문서 표시로 넘어가면 본격적으로 브라우저의 엔진이 등장한다.
 

DOM 트리를 구축하고, CSS 스타일을 적용하며, 페이지를 그려내는 과정이 세밀하게 펼쳐진다. 마치 브라우저의 뼈와 근육, 그리고 피부가 하나씩 덧입혀지는 듯한 느낌이다. 과거에 웹 페이지를 크롤링하고 데이터를 추출하는 과정에서 알게 된 DOM 트리에 대한 내용을 이번 기회에 제대로 알 수 있었다.

 

 

Part 3 애플리케이션 실행은 웹이 살아 움직이는 순간을 보여준다.

폼(form) 데이터 전송, 자바스크립트 실행, 이벤트 처리, 쿠키와 보안정책 등 브라우저와 서버의 관계가 한층 더 입체적으로 다가온다. 읽다 보면 우리가 매일 누르는 ‘로그인’ 버튼 하나에도 얼마나 많은 동작이 숨어 있는지 깨닫게 된다.

 

마지막 Part 4 모던 브라우저 기능에서는 GPU 가속, 애니메이션, 접근성, iframe, 스레드 기반 렌더링 등 현대적인 브라우저의 복잡한 구조가 이어진다. 단순히 결과물을 보여주는 데 그치지 않고, 어떻게 최적화되고 어떤 철학으로 작동하는지까지 함께 탐색한다.

 

이 책을 읽으며 느낀 것은 단 하나였다.

“브라우저를 이해하는 순간, 웹이 완전히 다르게 보인다.”

 

단순히 HTML과 CSS를 다루는 개발자를 넘어, 웹이라는 공간을 구성하는 거대한 시스템의 질서와 아름다움을 엿볼 수 있었다. "밑바닥부터 시작하는 웹 브라우저"는 단순한 프로그래밍 학습서가 아니다. 브라우저라는 세계의 구조를 하나씩 조립하며, 기술 속에 숨어 있는 논리와 예술성을 동시에 발견하게 한다.

 

웹의 근본을 이해하고 싶은 개발자, 혹은 “작동하는 원리를 알고 싶다”는 순수한 호기심을 가진 독자라면 꼭 읽어보길 권한다. 지식보다는 깨달음이 남는 책이다.

 

 

 

 



 

한빛미디어 서평단 <나는리뷰어다> 활동을 위해서 책을 협찬 받아 작성된 서평입니다.

 

[책 리뷰] 밑바닥부터 시작하는 웹 브라우저 / 한빛미디어, 2025

 

 

표지는 레고 피규어 한 명이 의자에 앉아 컴퓨터를 사용하는 모습입니다.ㅎㅎ 키보드를 두드리고 있고 컴퓨터 본체와 벽, 바닥 역시 레고 블록으로 구성되어 있습니다.

 

 

먼저 목차입니다.

 

[책 리뷰] 밑바닥부터 시작하는 웹 브라우저 / 한빛미디어, 2025[책 리뷰] 밑바닥부터 시작하는 웹 브라우저 / 한빛미디어, 2025

 

 

 

[책 리뷰] 밑바닥부터 시작하는 웹 브라우저 / 한빛미디어, 2025[책 리뷰] 밑바닥부터 시작하는 웹 브라우저 / 한빛미디어, 2025

[책 리뷰] 밑바닥부터 시작하는 웹 브라우저 / 한빛미디어, 2025[책 리뷰] 밑바닥부터 시작하는 웹 브라우저 / 한빛미디어, 2025

[책 리뷰] 밑바닥부터 시작하는 웹 브라우저 / 한빛미디어, 2025[책 리뷰] 밑바닥부터 시작하는 웹 브라우저 / 한빛미디어, 2025[책 리뷰] 밑바닥부터 시작하는 웹 브라우저 / 한빛미디어, 2025

[책 리뷰] 밑바닥부터 시작하는 웹 브라우저 / 한빛미디어, 2025

[책 리뷰] 밑바닥부터 시작하는 웹 브라우저 / 한빛미디어, 2025

 

 

 

 

들어가며

웹 개발을 하다 보면 브라우저라는 도구가 너무나 당연하게 곁에 있습니다. 하지만 정작 "브라우저는 내부에서 어떻게 동작할까?"라는 질문에는 쉽게 답하지 못했습니다. 단순히 주소창에 URL을 입력하면 페이지가 뜬다는 사실만 알 뿐, 그 사이에 어떤 일이 일어나는지는 늘 미스터리였지요. 그래서 이번에 접한 『밑바닥부터 시작하는 웹 브라우저』는 제게 큰 호기심을 불러일으켰습니다. 단순한 이론서가 아니라, 실제로 파이썬으로 브라우저를 하나씩 구현하며 구조를 이해할 수 있다는 점이 매력적이었습니다.

책 개요

이 책은 Jonathan Engelsma가 집필하고, 한빛미디어에서 출간된 책입니다. 제목 그대로 웹 브라우저의 페이지 로딩부터 렌더링, 보안, 접근성, 성능 최적화까지 브라우저 내부의 전 과정을 다룹니다. 구글 크롬이나 파이어폭스 같은 대형 브라우저의 코드를 직접 볼 수는 없지만, 이 책은 그 복잡한 원리를 작은 단위로 쪼개어 설명하며 "나만의 브라우저 만들기"를 실습할 수 있게 안내합니다.

인상 깊었던 부분

책은 크게 네 부분으로 나뉩니다.

 

Part 1

 

페이지 로딩에서는 서버와 연결하고, 요청과 응답을 주고받으며, HTML을 읽어 화면에 그리는 기본 과정을 다룹니다. 이 과정을 따라가다 보니, 평소 당연하게만 보던 브라우저의 첫 화면 출력이 얼마나 많은 단계를 거치는지 깨달을 수 있었습니다.
Part 2

 

문서 표시에서는 DOM 트리 구축, 레이아웃 계산, 스타일 적용 등 "보이는 웹페이지"가 만들어지는 과정을 설명합니다. 특히 CSS의 상속과 캐스케이딩 규칙을 직접 코드로 적용해보는 부분이 흥미로웠습니다. 단순히 개념이 아니라 "왜 이런 규칙이 필요한지" 이해할 수 있었습니다.


Part 3

 

애플리케이션 실행은 자바스크립트 실행, 폼 제출, 이벤트 처리 등을 다룹니다. 개인적으로 이 부분이 가장 인상 깊었는데, 제가 그동안 ‘브라우저가 그냥 알아서 해주겠지’ 하고 넘겼던 로직들이 실제로는 얼마나 세밀한 메커니즘 위에서 동작하는지 알게 되었습니다.


Part 4

 

모던 브라우저 기능에서는 GPU 가속, 애니메이션, 접근성, iframe 처리 등 최신 브라우저들이 제공하는 고급 기능까지 다룹니다. 특히 접근성 챕터는 기술 구현뿐 아니라 사용자를 배려하는 관점에서 읽히는 부분이어서, 앞으로 웹을 만들 때 제가 놓치고 있던 시선을 떠올리게 했습니다.

 

추천 독자

이 책은 단순히 웹 개발자가 아니라, 브라우저를 깊이 이해하고 싶은 모든 분께 유익합니다.

 

프론트엔드 개발자

내가 짠 코드가 브라우저 내부에서 어떤 과정을 거쳐 실행되는지 알고 싶을 때.


컴퓨터 과학 전공자나 학생

운영체제, 네트워크, 그래픽스가 한 데 어우러진 복합 시스템으로서 브라우저를 탐구하고 싶을 때.


호기심 많은 개발자

단순히 API를 사용하는 수준을 넘어 "그 밑단"을 알고 싶은 분.

 

마무리

『밑바닥부터 시작하는 웹 브라우저』는 단순한 학습서가 아니라, "보이지 않던 세계를 보이게 해주는 안내서"였습니다. 읽으면서 저 역시 앞으로 코드를 작성할 때 더 근본적인 질문을 던지고, 브라우저의 동작을 의식하며 효율적인 개발을 하고 싶다는 다짐을 하게 되었습니다.

이 책은 이런 분들께 추천합니다.

 

웹 브라우저의 내부 구조를 깊이 이해하고 싶은 개발자
단순히 웹을 ‘사용’하는 수준을 넘어, 그 원리를 알고 싶은 전공자·학생
성능, 보안, 접근성까지 고려한 진짜 ‘웹 기술자’로 성장하고 싶은 분

리뷰쓰기

닫기
* 상품명 :
밑바닥부터 시작하는 웹 브라우저
* 제목 :
* 별점평가
* 내용 :

* 리뷰 작성시 유의사항

글이나 이미지/사진 저작권 등 다른 사람의 권리를 침해하거나 명예를 훼손하는 게시물은 이용약관 및 관련법률에 의해 제재를 받을 수 있습니다.

1. 특히 뉴스/언론사 기사를 전문 또는 부분적으로 '허락없이' 갖고 와서는 안됩니다 (출처를 밝히는 경우에도 안됨).
2. 저작권자의 허락을 받지 않은 콘텐츠의 무단 사용은 저작권자의 권리를 침해하는 행위로, 이에 대한 법적 책임을 지게 될 수 있습니다.

오탈자 등록

닫기
* 도서명 :
밑바닥부터 시작하는 웹 브라우저
* 구분 :
* 상품 버전
종이책 PDF ePub
* 페이지 :
* 위치정보 :
* 내용 :

도서 인증

닫기
도서명*
밑바닥부터 시작하는 웹 브라우저
구입처*
구입일*
부가기호*
부가기호 안내

* 온라인 또는 오프라인 서점에서 구입한 도서를 인증하면 마일리지 500점을 드립니다.

* 도서인증은 일 3권, 월 10권, 년 50권으로 제한되며 절판도서, eBook 등 일부 도서는 인증이 제한됩니다.

* 구입하지 않고, 허위로 도서 인증을 한 것으로 판단되면 웹사이트 이용이 제한될 수 있습니다.

닫기

해당 상품을 장바구니에 담았습니다.이미 장바구니에 추가된 상품입니다.
장바구니로 이동하시겠습니까?