
2024년에 가장 뿌듯한 일이 있다면 이 책을 번역한 일이라고 생각합니다.
원래는 가제 "크로미움 인터널"에 관한 글을 적어보려고 생각했는데, 이 책 번역 기회가 닿아 "글을 적는게 힘든 일이다"를 배웠네요.
2025년 초까지 계속 수정을 거듭해 드디어 책이 손에 오니 감개 무량합니다.
이 좋은 책을 정말 제가 번역한게 맞나 싶네요.
사실상 현 직장에 이직한 이후 블로그를 방치했었는데, 이 책을 계기로 그동안 쌓았던 지식들을 정리해야겠습니다.
이 책은 아주 쉬운 내용으로 시작해서 뒤로 가면 정말 프로그래밍 역량이 있어야 진행이 가능한 수준으로 난이도가 올라갑니다.
PROLOGUE. 브라우저와 웹
웹이 없던 시절 웹의 기원이 된 아이디어들부터 웹의 역사를 따라가며 브라우저의 등장과 발전, 브라우저 전쟁 이야기와 모던 브라우저까지의 이야기를 다루고 있습니다.
저도 이 책을 번역하기 전에는 몰랐던 이야기들이 많아서 너무 좋았습니다.

PART 1. 페이지 로딩
웹페이지를 읽어서 아주 간단하게 웹페이지의 콘텐츠를 화면에 그리는 텍스트만 있는 파이썬 프로그램을 작성합니다.
이 과정에서도 폰트의 유래, 베이스라인, 어센트, 디센트에 대해서 배울 수 있었습니다.
웹페이지를 파싱하는 기초적인 작업만으로도 브라우저를 만들어본 것같은 기분을 느낄 수 있습니다.
PART 2. 문서 표시
앞장에서 만든 파이썬 프로그램을 본격적으로 개선해 브라우저의 뼈대를 만듭니다.
텍스트를 DOM 트리로 만들고, 기초적인 레이아웃의 개념을 배우실 수 있습니다.
CSS 스타일을 적용하고 버튼, 링크 처리등을 하는데 생각보다 어렵지 않게 따라하실 수 있을 겁니다.
(여기까진 별 문제 없습니다)
PART 3. 애플리케이션 실행
여기서부터는 조금 어려워지는데, 간단한 파이썬 서버를 만들어서 브라우저와 통신하게 할 겁니다.
그리고, 자바스크립트를 바인딩하고 쿠키등의 데이터가 어떻게 처리되는지, 서버와 브라우저 코드를 같이 수정하면서 들여다 보는 것이 너무 좋았습니다.
보안에 관련해서는 좀 더 정보가 많았으면 하는 바람이 있는데, 이 책의 범위를 넘어가는 부분이 있긴 합니다.
아쉽지만 이 책에서 다루는 정도만으로 웹의 최신 보안 기술들에 흥미를 가져볼 수 있을 것 같습니다.
PART 4. 모던 브라우저 기능
하.. 이때부터는 솔직히 어렵습니다. 여기를 직접 짜실 수 있는 분이면 훌륭한 개발자라고 인정해드릴 수 있겠습니다.
책 예제가 모두 주어지지 않고 앞에서 작성한 코드에 수정을 할 것을 지시합니다. 알아서 다 수정하셔야 하고 안되면 디버깅을 열심히 하셔야 합니다.
대신 모던 브라우저의 주요 기능들을 정말 다뤄봅니다.
멀티 프로세스는 다루지 않지만 멀티 스레드만으로도 얼마나 어려운이 느낄 수 있을 것입니다.
애니메이션, 컴포지팅이 얼마나 어려운지도 아실 수 있을 것이고, 최적화를 위해 브라우저가 하는 더티비트 시스템에 대해 이해하실 수 있을 겁니다. (얼마나 어려운지요)
특히 마지막 장, "이전 결과 재사용"은 정말 어려울 겁니다.
하지만 이 앞장까지만 구현해봐도 꽤 괜찮은 브라우저가 완성된걸 보실 수 있을 겁니다.
PART 4 까지 보고, 예제도 직접 해보고 한다면 당분간 지루할 시간이 없을 파이썬 프로그램 하나를 만들어보시지 싶네요.
https://www.yes24.com/Product/Goods/153499985
밑바닥부터 시작하는 웹 브라우저 - 예스24
웹 브라우저! 쌓고, 뜯고, 이해하라하나씩 이해하는 웹의 작동 원리크롬, 파이어폭스, 브레이브, 웨일 같은 웹 브라우저는 겉으로는 단순해 보이지만, 그 밑에는 무려 1천만 줄에 달하는 코드가
www.yes24.com
'browser engineering 관련' 카테고리의 다른 글
| 8장. 서버로 정보 보내기 추가 설명 (0) | 2025.08.31 |
|---|---|
| 에러 상황들 (0) | 2025.08.31 |
| 5장. 페이지 레이아웃의 추가 설명 (0) | 2025.08.30 |
| 단순링크: 웹개발의 역사 (0) | 2025.08.22 |
| DuckyPy 설치시 externally-managed-environment (0) | 2025.07.19 |