LitMy.ru - литература в один клик

Web Browser Engineering

  • Добавил: literator
  • Дата: Вчера, 20:28
  • Комментариев: 0
Название: Web Browser Engineering
Автор: Pavel Panchekha, Chris Harrelson
Издательство: Oxford University Press
Год: 2025
Страниц: 529
Язык: английский
Формат: pdf (true)
Размер: 10.2 MB

A working or budding software engineer always benefits from deeply understanding the platform their code runs on, and web browsers are the most common and widely-used platform there is. This book is the essential description of how they work and how that impacts web developers and other software engineers whose work touches the web.

Readers of Web Browser Engineering will join the authors in building their own web browser, including rich visual effects, multithreaded architecture, jаvascript APIs, and comprehensive security policies. Web browser engines are filled with unique challenges, interesting algorithms, and clever optimizations. Building a browser is both easy and incredibly hard, both intentional and accidental, and everywhere you look, you see the evolution and history of the web wrapped up in one codebase. It's both fun, and endlessly interesting.

Parts 2–4 of this book construct a basic browser weighing in at around 1000 lines of code, twice that after exercises. The average chapter takes 4–6 hours to read, implement, and debug for someone with a few years’ programming experience. Part 5 of this book covers advanced topics; those chapters are longer and have more code. The final browser weighs in at about 3000 lines.

Your browser will “work” at each step of the way, and every chapter will build upon the last. That way, you will also practice growing and improving complex software. If you feel particularly interested in some component, please do flesh it out, complete the exercises, and add missing features. We’ve tried to arrange it so that this doesn’t make later chapters more difficult.

The code in this book uses Python 3, and we recommend you follow along in the same. When the book shows Python command lines, it calls the Python binary python3. That said, the text avoids dependencies where possible and you can try to follow along in another language. Make sure your language has libraries for TLS connections (Python has one built in), graphics (the text uses Tk, Skia, and SDL), and jаvascript evaluation (the text uses DukPy).

This book’s browser is irreverent toward standards: it handles only a sliver of the full HTML, CSS, and jаvascript languages, mishandles errors, and isn’t resilient to malicious inputs. It is also quite slow. Despite that, its architecture matches that of real browsers, providing insight into those 10 million line of code behemoths. That said, we’ve tried to explicitly note when the book’s browser simplifies or diverges from standards. If you’re not sure how your browser should behave in some edge case, fire up your favorite web browser and try it out.

This interactive and engaging book will be a unique source for any software engineer, computer scientist, web developer, or simply anyone with an interest in web browsers and how they work.

Скачать Web Browser Engineering












[related-news] [/related-news]
Внимание
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.