browser engineering 관련

[책소개] "밑바닥부터 시작하는 웹브라우저" 소개

소혼 2025. 9. 18. 17:53

 

방금 받은 따끈한 책

 

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

 

반응형