目次
- ブラウザとは(ブラウザコンポーネント)
- ブラウザとサーバーの通信
- HTMLレンダリングエンジン
- JavaScriptエンジン
- 日本ブラウザシェア率(2016~)
ブラウザとは
ウェブブラウザ(インターネットブラウザ、web browser)とは、 World Wide Web (WWW) の利用に供するブラウザであり、ユーザエージェント (UA) である。具体的には、ウェブページを画面や印刷機に出力したり、ハイパーリンクをたどったりするなどの機能がある。単にブラウザ(ブラウザー)と呼んだ場合、多くはウェブブラウザのことを指す。
ブラウザコンポーネント
各コンポーネント
- ユーザインターフェース
- ユーザは操作できる部分:アドレスバー、戻る/進むボタン、メニューなど
- ブラウザ エンジン
- ユーザインターフェースとレンダリングエンジンの間の情報の受け渡しを担当
- ⭐️HTMLレンダリングエンジン
- HTMLとCSSを解析し、画面に表示
- ⭐️JavaScriptエンジン
- JavaScriptを動かしを担当
- ネットワーキング
- HTTPリクエストなどのネットワーク呼び出しを担当
- UIバックエンド
- チェックボックスやウィンドウなどのコアウィジェットの描画を担当
- データストレージ
- Cookieなどのデータの保存を担当
ブラウザとサーバーの通信
- アドレスバーにアクセス先を入力
- ネットワーク経由でサーバーへリクエスト
- リクエスト内容より処理してHTMLを生成
- CSSとJSファイルなどもクライアントへ返信
- レンダリングエンジンとJavaScriptエンジンより画面を表示
HTMLレンダリングエンジン
HTMLレンダリングエンジンとは、ウェブページ記述用言語で書かれたデータを解釈し、実際に画面に表示する文字や画像などの配置を計算するプログラムである。HTMLに加え、CSS、XMLなどを解釈できるものが多い。
主なHTMLレンダリングエンジン
Trident (Internet Explorer、QQ浏览器) - トライデント
EdgeHTML (Microsoft Edge) - エッジ
Gecko (Firefox) - ゲッコー
Servo - サーボ
KHTML (Konqueror)
WebKit (Safari) - ウェブキット
Blink (Chromium, Chrome, Opera, Microsoft Edge) - ブリンク
HTMLレンダリングエンジンの歴史
参照:Browser engine From Wikipedia, the free encyclopedia
補足: EdgeブラウザのChromiumベース移行、マイクロソフトが正式発表
JavaScriptエンジン
JavaScriptエンジンとはJavaScriptコードを実行するプログラムまたはインタプリタのことです。
JavaScriptエンジンの種類
ブラウザ | レンダリングエンジン | JavaScriptエンジン |
---|---|---|
IE | Trident | Chakra (Jscript9) |
Microsoft Edge | EdgeHTML | Chakara (JavaScript) |
Firefox | Gecko | SpiderMonkey |
Konqueror | KHTML | KJS |
Safari | WebKit | JavaScriptCore |
Chrome, Opera | Blink | V8 |
参照:PhantomJSと各ブラウザのJavascriptエンジンまとめ
参照:V8エンジンでのJavaScriptの機能と最適化コードの書き方に関する5つのベストプラクティス
日本ブラウザシェア率(2016~)
補足:Desktop、Mobile、Tabletを含む
[出典:https://gs.statcounter.com]