이 상품은 구매 후 지원 기기에서 예스24 eBook앱 설치 후 바로 이용 가능한 상품입니다.
|
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 변화하는 환경
|
Pavel Panchekha
Chris Harrelson
|
한 조각씩 파헤치는 웹 브라우저의 숨겨진 메커니즘구글 크롬, 파이어폭스, 엣지... 지금 우리가 사용하는 웹 브라우저의 코드는 최소 1,000만 줄! 이 복잡하고 거대한 웹 브라우저의 '숨겨진 내부'를 직접 탐구할 기회가 찾아왔습니다. 이 책은 수많은 웹 개발자와 학생에게 여전히 미지의 영역으로 남아 있는 브라우저의 동작 원리를 명쾌하게 설명하는 독보적인 안내서입니다.단순한 이론 학습에 그치지 않고, 파이썬 코드로 나만의 웹 브라우저를 직접 작성하며 밑바닥부터 살펴봅니다. 간단한 기능부터 시작해 한 조각씩 만들어 방대한 실제 웹 브라우저의 작동 원리를 꿰뚫어 볼 수 있습니다. 실제 웹 브라우저 개발에 참여한 저자와 역자의 안내를 따라, 여러분만의 브라우저를 만들어 보세요.이 책의 내용● 페이지 로딩부터 렌더링까지 웹 사이트를 표시하는 전체 과정● 크롬, 파이어폭스, 웨일 등 모던 브라우저의 아키텍처 이해● 보안 및 성능 최적화● 웹 표준과 소프트웨어 공학적 사고● 접근성 및 시각 효과
|