브라우저는 1천만 줄의 코드가 있기에 움직인다고 한다. 우리는 브라우저를 너무 당연하게 사용했고, 개발할 때 당연한 기능, 응당 있어야할 기능이라고 받아들인다. 브라우저가 없어져봐야 브라우저의 고생을 알지 않을까? 마치 자취를 처음하고 빨래와 청소가 자동이 아니라 어머니의 노력이었음을 알게되는 것과 같다.

"한빛미디어 서평단 <나는리뷰어다> 활동을 위해서 책을 협찬 받아 작성된 서평입니다."
시작에 앞서
프론트엔드, 웹을 다루다보면 브라우저에 대한 이해가 필요해진다. JavaScript Deepdive라는 책에서도 꽤 많은 분량을 할애해서 브라우저에 대해 다룬다. 브라우저 안에서 JS 엔진이 돌아가고 있기에 뗄 수 없는 관계다. 따라서 브라우저를 이해하면 더 멋진 개발자가 될 수 있다. (?)
브라우저를 이해하는 일이 필요하다면 브라우저를 직접 만들어보면 될 일, 프로그래밍쪽은 이런 책들이 꽤나 많다. 인터프리터를 만들어보기는 책, SICP 같은 책들도 그런 느낌이다. 아무튼 이 책은 브라우저를 최소한의 기능으로 만들어보면서 배우는 책이다.
난이도
아무튼 난 어려웠다.
이 책의 예제는 파이썬으로 진행된다. 많은 사람들이 사용하는 언어이고 어려운 문법을 사용하지 않기 때문에 언어적인 문제는 없다.
그렇지만 책에서 얘기하는 '프로그래밍 경험이 많지 않아도 핵심 원리를 이해하면서 웹페이지 로딩 과정 확인하기'는 쉽지 않다.
내용도 많고 누구나 쉽게 이해하면서 할 순 없다. (일단 나는 그랬다.) 이해가 안되도 일단 해보고 다시 보면서 추가 공부를 하면 된다. 좋은 기반이 될 책이다.
만들면서 배우기
이 책의 목차는 브라우저의 동작 순서랑 비슷하게 진행된다. 초반엔 서버에서 HTTP로 또는 HTTPS로 웹 페이지를 받아와서 Python thinker를 통해 텍스트를 뿌려보는 일을 한다. 나는 이 과정에서 겉핥기로 알았던 네트워크 지식의 밑바닥을 봤다. 계층과 프로토콜로 추상화된 네트워크 동작 원리를 일단 해보면서 알 수 있었다.
텍스트를 뿌리고, 텍스트가 많아지니 스크롤 기능을 시작으로 여러 브라우저 인터렉션을 구현한다. HTML을 파싱해서 DOM 트리, CSS 스타일링을 하기도 하고, 후반에는 폼, JS 실행, 쿠키 등도 다룬다.
우리가 당연하게 여겼던 브라우저의 기능을 직접 만들어보며 브라우저에게 감사하는 마음을 갖게 해주는 책이다.
마무리
이 책은 컴퓨터 공학을 공부하는 학생이라면 누구나 봐도 도움이 될 책같다. 주니어 개발자도 보면서 지식을 쌓기 정말 좋아보인다.
개발자의 시각에서 브라우저 성능, 구조를 전체적으로 톺아보는 책이고, CS의 관점에서 파싱, 레이아웃 만들기, 이벤트 등에 대해 다시 공부할만한 소스가 되어줄 좋은 시발점이다.
'리뷰 > Book' 카테고리의 다른 글
| 책 리뷰 '그로스 해킹' (0) | 2026.01.17 |
|---|---|
| 책 리뷰 '소프트웨어 아키텍처 The Basics' (0) | 2025.12.28 |
| 책 리뷰 '나만의 MCP 서버 만들기 with 커서 AI' (0) | 2025.09.15 |
| 책 리뷰 '코딩 자율학습 리액트 프런트엔드 개발 입문' (0) | 2025.09.07 |
| 책 리뷰 '디자인 경험을 바꾸는 UX/UI 디자인 (with AI)' (2) | 2025.07.27 |