目次
31 関係: Apache Cordova、チャクラ (曖昧さ回避)、Babel (トランスコンパイラ)、Bun (ソフトウェア)、Chakra、Chromium、Deno、ECMAScript for XML、ELinks、Google Chrome、IPhone、JavaScript、JSFuck、KJS、Mozilla Firefoxのバージョンの変遷、Narcissus、Nashorn、NetBeans、Nitro、Opera、Opera Mobile、PDF.js、Portable Document Format、QML、Rhino、Safari、Spectre、SpiderMonkey、TypeScript、V8 (JavaScriptエンジン)、WebKit。
Apache Cordova
Apache Cordova(アパッチ・コルドバ)は、オープンソース(Apache 2.0 License)のモバイルアプリケーション開発フレームワーク。 ニトビ・ソフトウエア社によってPhonegap(フォンギャップ)として開発が始められた。その後アドビシステムズ(現アドビ)がニトビ・ソフトウェア社を買収したことによりPhoneGapはAdobeのプロダクトとなり、そのソースコードがApache CordovaとしてApacheソフトウェア財団に寄贈され、コミュニティによってメンテナンスされている。
見る JavaScriptエンジンとApache Cordova
チャクラ (曖昧さ回避)
チャクラ。
見る JavaScriptエンジンとチャクラ (曖昧さ回避)
Babel (トランスコンパイラ)
Babelは、フリーかつオープンソースのJavaScriptトランスコンパイラであり、主にECMAScript 2015+(ES6+)コードを古いJavaScriptエンジンで実行できる下位互換バージョンのJavaScriptに変換するために使用される。Babelは、JavaScriptプログラミング言語の最新機能を使用するための一般的なツールである。 開発者は、Babelを使用して新しいJavaScript言語機能を使用し、発展途上のブラウザが処理できるバージョンのJavaScriptにソースコードを変換できる。Babelのコアバージョンは、2016年の時点で1ヶ月に500万回ダウンロードされ、2019年の時点のダウンロード数は週あたり1600万回にまで増加している。
見る JavaScriptエンジンとBabel (トランスコンパイラ)
Bun (ソフトウェア)
Bunとは、プログラミング言語Zigを用いてゼロから構築されたJavaScriptランタイム、パッケージマネージャー、テストランナービルダーである。Jarred SumnerによってNode.jsの完全互換として設計された。Node.jsやDenoがJavaScriptエンジンとしてV8を利用しているのに対し、BunはJavaScriptCoreを採用している。 バンドル、縮小化、サーバーサイドレンダリング(SvelteKit、Nuxt.js、Vite) がサポートされている。 ランタイムではForeign function interface (FFI)、SQLite3、TLS 1.3、DNS解決がサポートされている。
見る JavaScriptエンジンとBun (ソフトウェア)
Chakra
Chakra(チャクラ)はマイクロソフトのウェブブラウザとWindowsランタイム上のアプリケーションで使用されるJavaScriptエンジンのコードネームである。 Internet ExplorerのHTMLレンダリングエンジンであるTridentがMicrosoft Edge用にEdgeHTMLとしてフォークされたのと同じく、Chakraもまたフォークされ、Internet Explorer用は従来通りJScript9.dll、Microsoft Edge用にChakra.dllと分離されている。
Chromium
Chromium(クロミウム)は、フリーかつオープンソースのウェブブラウザ向けのコードベースである。主にGoogleによって開発とメンテナンスが行われている。Googleは、Chromiumのコードに機能追加をすることでGoogle Chromeブラウザを作成している。 Chromiumのコードベースは幅広く利用されている。Microsoft Edge、、Opera<!--per https://gs.statcounter.com/ they're the most used-->、他の多数のブラウザはChromiumのコードをベースとしている。さらに、Chromiumのコードの大きな部分を利用した複数のアプリケーションフレームワークが作成されている。
Deno
Denoは、V8 JavaScriptエンジン及びRustプログラミング言語に基づいた、JavaScript及びTypeScriptのランタイム環境である。Node.jsの作者であるライアン・ダールによって作成され、セキュリティと生産性に焦点を当てている。ライアン・ダールが2018年に行った講演「Node.jsに関する10の反省点」で発表された。Denoは単一の実行ファイル内でランタイム環境とパッケージ管理システムの両方の役割を明示的に引き受けるので、別途パッケージ管理システムを必要としない。
ECMAScript for XML
ECMAScript for XML(E4X)は、ECMAScript(ActionScript、DMDScript、JavaScript、JScript を含む)にネイティブのXMLサポートを追加するプログラミング言語拡張である。その目的は、DOMインタフェースの代替として、単純な構文でXML文書にアクセスできるインタフェースを提供することである。E4Xがリリースされるまで、XMLへのアクセスには常にオブジェクトレベルが関与していた。E4XではXMLを文字や整数と同様のプリミティブ型として扱う。そのため、アクセスが高速化され、サポートが容易になり、プログラムの構成要素(データ構造)としても扱いやすくなる。
見る JavaScriptエンジンとECMAScript for XML
ELinks
(イーリンクス)は、UNIX系システムのコンソールで動作するフリーのテキストブラウザである。 2001年に、ウェブブラウザLinksの実験的(Experimental)なフォークとしてペーター・バウディスが開発を開始したことから、"ELinks"との名前がある。その後、"E"は強化()および拡張()を意味するようになった。 2004年9月1日、バウディスは、プロジェクトの保守に費やす時間が足りず、ソフトウェアのリリースを検証したり準備したりすることに時間を割くよりもプログラミングに集中したいとして、保守の業務をデンマークの開発者ジョナス・フォンセカに委ねた。 2017年3月17日、OpenBSDは、セキュリティ面の問題があること、開発者らの対応の遅いことを挙げ、OpenBSDのportツリーからELinksを削除した。
Google Chrome
Google Chrome(グーグル・クローム)は、Googleが開発したクロスプラットフォームのウェブブラウザ。2008年にMicrosoft Windows用に最初にリリースされ、その後Linux、macOS、iOS、Androidに移植された。 このブラウザは「Chromebook」(ノートパソコン)や「Chromebox」(デスクトップパソコン)に使われているChromeOSの主要構成要素でもあり、そのウェブアプリの基礎にもなっている。 Google Chromeのソースコードは、そのほとんどがGoogleのオープンソースのChromiumプロジェクトからのものであるが、Google ChromeはGoogle社所有のフリーウェアとしてライセンスするようにした。
見る JavaScriptエンジンとGoogle Chrome
IPhone
iPhone(アイフォーン)は、Appleが設計・販売しているスマートフォン。初代iPhoneは2007年1月9日に発表され、同年6月29日にアメリカ合衆国で販売が開始された。「通信キャリア」とのシームレスな通話をも可能にしたこと、当初はアプリケーションも自社限定であり機能は多くなかったが、GPSも内蔵していたことで話題になった。 現在の最新モデルであるiPhone 15 / iPhone 15 Plus、iPhone 15 Pro / iPhone 15 Pro Maxは、2023年9月12日(日本時間13日)に発表された。
JavaScript
タグで囲まれている。 JavaScript(ジャバスクリプト)は、プログラミング言語であり、HyperText Markup Language(HTML)やCascading Style Sheets(CSS)と並ぶ World Wide Web(WWW)の中核技術の一つである。 プロトタイプベースのオブジェクト指向スクリプト言語であるが、クラスなどのクラスベースに見られる機能も取り込んでいる。 利用される場面はウェブサイト、ウェブアプリケーション、バックエンド、デスクトップアプリケーション、モバイルアプリケーションなど、ウェブブラウザからサーバ、デスクトップからスマートフォンまで多岐にわたっている。
JSFuck
JSFuckはJavaScriptのサブセットとして考案された難解プログラミング言語。・(・)・!・+の6文字のみコードを書く。 JavaScriptの様々な言語仕様を利用することで、非常に冗長なコードになってしまうものの上記6文字だけでJavaScriptの全機能を使用できる。 名前はBrainfuckに由来するが、独自のコンパイラやインタプリタを必要とするBrainfuckとは異なり、JSFuckはあくまでもJavaScriptの言語仕様に基づいているためJavaScriptの処理系(WebブラウザやJavaScriptエンジン)で動作する。,, !, and +.
KJS
KJSはKDEプロジェクトのJavaScriptエンジンである。Web上だけでなくKDE/Qtアプリケーションとバインディングしたり、アプリケーションを作成することもできる。 AppleのウェブブラウザSafariのエンジンWebKitでKHTMLとともに採用されている。また、WebKitのJavaScriptCoreフレームワークはKJSを基にしている。
Mozilla Firefoxのバージョンの変遷
この記事では、主にデスクトップ版のMozilla Firefoxのバージョン変遷を掲載していく。 Android 版については、 Firefox for Mobile を参照。
見る JavaScriptエンジンとMozilla Firefoxのバージョンの変遷
Narcissus
Narcissus(ナルシサス) とは、JavaScriptで書かれた、オープンソースのJavaScriptエンジン。
Nashorn
Nashornは、オラクルによってJavaプログラミング言語で開発されたJavaScriptエンジンである。(JSR 292)に基づいており、Java 8でリリースされている。 このプロジェクトは、2011年7月のJVM言語サミットで最初に発表され、2011年10月にJavaOneで確認された。 2012年11月21日、オラクルはOpenJDKリポジトリでのNashornソースのオープンソースを正式に発表した。プロジェクトの目的は、JSR-223を介してJavaアプリケーションにJavaScriptを埋め込むことを可能にし、スタンドアロンのJavaScriptアプリケーションを開発することである。2012年12月21日、オラクルはNashornソースがOpenJDKリポジトリで公開されたことを発表した。
NetBeans
NetBeans(ネットビーンズ)とは、オラクル(買収以前はサン・マイクロシステムズ、以下同)を中心としたコミュニティにより開発されている、オープンソースの統合開発環境 (IDE) である。Java/PHP/C言語/C++/JavaScript/Groovy等のいくつかのプログラミング言語に対応している。NetBeans Platformを利用して開発されており、様々なモジュールを組み込むことが可能である。NetBeansの特徴の一つであるGUIエディタ (Project Matisse) もその一つである。
Nitro
Nitro(ニトロ)とは、AppleのウェブブラウザのSafari 4に搭載されているJavaScriptエンジン。JITコンパイラにより、非常に高速にJavaScriptを実行することが可能であり、前バージョンのSafari 3と比較して4.2倍の速度とされる。またIE 7より最大30倍、Firefox 3よりも3倍以上速く実行するとされている。元々、WebKitのプロジェクトでSquirrelFish Extremeと呼ばれていたJavaScriptエンジンの、Appleでの名称である。
Opera
Opera(オペラ)は、ノルウェーのソフトウェア開発会社、オペラ・ソフトウェア (Opera Software ASA) によって開発されているウェブブラウザである。法人としてのオペラ・ソフトウェアは、2016年7月、中国の奇虎360に6億米ドルで売却され同社の傘下に入った。
Opera Mobile
Opera Mobile(オペラモバイル)は、ノルウェーのソフトウェア開発会社、オペラ・ソフトウェア (Opera Software ASA) によって開発されているスマートフォン、タブレットおよび携帯電話向けのウェブブラウザ。
見る JavaScriptエンジンとOpera Mobile
PDF.js
PDF.jsまたはpdf.jsは、ウェブ標準に準拠したHTML5 Canvasを使用してPortable Document Format (PDF) ファイルを描画するJavaScriptライブラリである。 このプロジェクトはにによって開始され、現在はMozillaが主導している。
Portable Document Format
Portable Document Format(ポータブル・ドキュメント・フォーマット、PDF)は、デジタルデバイス上でアプリケーションやOS、ハードウェアに依存せず文章や図版を表示するために開発され、ISO 32000で国際標準化された電子文書ファイル形式である。 PostScriptをベースにAdobeが開発し、1993年にAdobe Acrobatで初めて採用された。
見る JavaScriptエンジンとPortable Document Format
QML
QML (Qt Modeling Language) は、である。QMLはJavaScriptをベースとした言語であり、アプリケーションのユーザインタフェースをデザインするためのCSSやJSONのような宣言型言語である。この言語はノキアによって開発されたQtのUI作成キットであるに関連するものである。Qt Quickはタッチ入力と流体アニメーション (60 fps) とユーザーエクスペリエンスが重要となるモバイルアプリケーションでしばしば使用されている。QMLはQt 3Dと共に3Dシーンの描画と「フレームグラフ」のレンダリングのためにも使用される。QMLドキュメントは階層的なオブジェクトツリーを記述する。Qtに同梱されているQMLモジュールには基本的なグラフィカルビルディングブロック (長方形、画像など)、モデリングコンポーネント (FolderListModel、XmlListModelなど)、動作コンポーネント (タップハンドラ、ドラッグハンドラ、状態、トランジション、アニメーションなど)、より複雑なコントロール (ボタン、スライダー、ドロワ、メニューなど) が含まれている。これらの単純な要素を組み合わせることで、インターネットに対応したアプリケーションなどの複雑なものを作成することができる。
Rhino
Rhino(ライノー)とはオープンソースで開発されているJavaScriptの実装 (JavaScriptエンジン) である。RhinoはJavaで記述されており、Mozilla Foundationによって管理、配布されている。Mozilla Foundationでは、C言語による実装のSpiderMonkeyというソフトウェアの提供も行っている。 Rhinoの開発は1997年にネットスケープコミュニケーションズによって始められ、1998年にMozilla Foundationに譲渡された後、オープンソースソフトウェアとなった。Rhinoの名はオライリー社によって出版されたJavaScriptの書籍(ISBN 4-87311-027-0; リンクは現行版)の表紙に描かれた動物(サイ)から名付けられた。
Safari
Safari(サファリ)は、Appleにより開発されているウェブブラウザ。レンダリングエンジンのWebKitを初めとするオープンソースソフトウェアをベースにしており、Mac標準搭載のウェブブラウザとして過去のInternet Explorer for MacやNetscape Navigatorを置き換える形で登場した。macOS、iOS、iPadOSに対応しており、2007年から2012年まではWindows版も提供されていた。
Spectre
Spectre脆弱性のロゴマーク Spectre(スペクター)は、今日の幅広いマイクロプロセッサに存在するハードウェアレベルの脆弱性であり、正当な権限のないプロセスが保護されたメモリの領域(例:サンドボックスの外側)にアクセスすることが可能になる。
SpiderMonkey
SpiderMonkey(スパイダーモンキー)はFirefoxなどで使用されている世界初のJavaScriptエンジンである。ブレンダン・アイクがネットスケープコミュニケーションズで開発し、後にオープンソースとして公開され、現在は Mozilla Foundation が保守している。
見る JavaScriptエンジンとSpiderMonkey
TypeScript
TypeScript はマイクロソフトによって開発され、メンテナンスされているフリーでオープンソースのプログラミング言語である。TypeScriptはJavaScriptに対して、省略も可能な静的型付けとクラスベースオブジェクト指向を加えた厳密なスーパーセット(既存のものを全て含んだ上でより機能が拡張されている上位互換となるモノ)となっている。C#のリードアーキテクトであり、DelphiとTurbo Pascalの開発者でもあるアンダース・ヘルスバーグがTypeScriptの開発に関わっている。TypeScriptはクライアントサイド、あるいはサーバサイド (Node.js) で実行されるJavaScriptアプリケーションの開発に利用できる。
V8 (JavaScriptエンジン)
V8は、Googleが開発するオープンソースのJIT Virtual Machine型のJavaScriptエンジンである。この名前は同じく「V8」と略されるV型8気筒エンジンに由来している。Google ChromeなどのChromiumベースのブラウザや、Node.jsなどで採用されている。
見る JavaScriptエンジンとV8 (JavaScriptエンジン)
WebKit
WebKit(ウェブキット)は、Appleが中心となって開発しているオープンソースのHTMLレンダリングエンジン群の総称である。HTML、CSS、JavaScript、SVG、MathMLなどを解釈する。 WebKitは、元々AppleのmacOSに搭載されるSafariのレンダリングエンジンとして、LinuxやBSDといった、Unix系用のレンダリングエンジンであるKHTMLをフォークして開発された。現在はその他の多くのプラットフォームに移植されている。

