〔電子〕[作って学ぶ]ブラウザのしくみ──HTTP、HTML、CSS、JavaScriptの裏側

WEB+DB PRESS plus

土井麻未

2024年11月9日

技術評論社

3,740円(税込)

PC・システム開発

◆Rustで自作しブラウザの挙動を理解する◆ Webブラウザは、開発者にとってもユーザーにとっても、もはや日常の一部となっているほど身近なソフトウエアですが、近年のブラウザはあまりにも高機能かつ巨大になってしまったため、その仕組みを詳しく理解することは困難です。そこで、シンプルなブラウザをRustを用いて実装することによって、ブラウザ上でWebサイトを開くまでに何が起きているのかを理解することを目的とします。さらに、作成したブラウザを、別冊で解説・実装している自作OSの上で動かすことによって、ブラウザと更にその裏側を理解していきます。 ■こんな方におすすめ ・普段からブラウザを使用していて、その裏側に少しでも興味を持っている方 ■目次 第1章:ブラウザを知る──Webサイトを表示するアプリケーション   ブラウザの役割❶──Webクライアントとしてのブラウザ   ブラウザの役割❷──レンダリングエンジンとしてのブラウザ   ブラウザの役割❸──JavaScriptエンジンとしてのブラウザ   コアの役割を支えるためのさらなる機能   マルチプロセスアーキテクチャ   ブラウザのセキュリティ対策   本書のゴール・注意点 第2章:URLを分解する──リソースを指定する住所   URLとは   URLの構文解析の実装   ユニットテストによる動作確認 第3章:HTTPを実装する──ネットワーク通信を支える約束事   HTTPとは   HTTPクライアントの実装   ユニットテストによる動作確認   WasabiOS上で動かす 第4章:HTMLを解析する──HTMLからDOMツリーへの変換   HTMLとは   HTMLの字句解析──トークン列の生成   ユニットテストによる字句解析の動作確認   HTMLの構文解析──ツリーの構築   ユニットテストによる構文解析の動作確認   WasabiOS上で動かす 第5章:CSSで装飾する──CSSOMとレイアウトツリーの構築   CSSとは   CSSの字句解析──トークン列の生成   ユニットテストによる字句解析の動作確認   CSSの構文解析──CSSOMの構築   ユニットテストによる構文解析の動作確認   レイアウトツリーの構築   ユニットテストによるレイアウトの動作確認   GUI描画のための準備 第6章:GUIを実装する──ユーザーとのやりとり   GUIとは   GUIアプリケーションのウィンドウの作成   ユーザーの入力を取得   アドレスバーからナビゲーション   ページの内容の描画   リンククリックでナビゲーション 第7章:JavaScriptを動かす──ページの動的な変更   JavaScriptとは   JavaScriptの加算/減算の実装   JavaScriptの変数の実装   JavaScriptの関数呼び出しの実装   ブラウザAPIの追加   WasabiOS上で動かす ■著者プロフィール 土井麻未:名古屋市立大学芸術工学部でデザインを学びながら、フロントエンド、バックエンドのウェブ開発を独学で学ぶ。名古屋大学大学院情報学研究科では、コンピュータを使って生命の謎に迫る人工生命の分野で研究。低レイヤーの分野に興味があり、趣味の時間でRISC-Vエミュレータを開発中。現在はGoogleでソフトウェアエンジニアとしてブラウザ開発に従事している。

本棚に登録&レビュー

みんなの評価(0

--

読みたい

0

未読

0

読書中

0

既読

0

未指定

2

書店員レビュー(0)
書店員レビュー一覧

みんなのレビュー

レビューはありません

Google Play で手に入れよう
Google Play で手に入れよう
キーワードは1文字以上で検索してください