〔電子〕[作って学ぶ]ブラウザのしくみ──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でソフトウェアエンジニアとしてブラウザ開発に従事している。
close
ログイン
Readeeのメインアカウントで
ログインしてください
Readeeへの新規登録は
アプリからお願いします
- Webからの新規登録はできません。
- Facebook、Twitterでのログイ
ンは準備中で、現在ご利用できませ
ん。
X
LINE
楽天ブックスサイト
楽天ブックスアプリ
みんなのレビュー