トップQs
タイムライン
チャット
視点
CommonJS
サーバーサイドなどのウェブブラウザ環境外におけるJavaScriptの各種仕様を定めることを目標としたプロジェクト ウィキペディアから
Remove ads
CommonJSとは、サーバーサイドなどのウェブブラウザ環境外におけるJavaScriptの各種仕様を定めることを目標としたプロジェクトである。
歴史
CommonJSプロジェクトは元々、2009年1月にMozillaのエンジニアKevin DangoorによりServerJSプロジェクトとして立ち上げられた[1]。
「 | What I’m describing here is not a technical problem. It’s a matter of people getting together and making a decision to step forward and start building up something bigger and cooler together. | 」 |
— Kevin Dangoor[1] |
2009年8月、プロジェクトはより広い範囲のAPIを対象とすることを示すために、現在のCommonJSへと改名された[2]。仕様の作成と採用はオープンプロセスで進められた。仕様は複数の実装が完了した後、最終的に確定とされた[3]CommonJSはECMAScriptの仕様を定めるEcmaインターナショナルのTC39グループとは直接関係はないが、TC39のメンバーの一部はCommonJSプロジェクトに参加している。[4]。
2013年5月、Node.jsのパッケージマネージャーnpmの作者であるIsaac Z. Schlueterは、CommonJSはNode.jsにとって時代遅れになりつつあり、Node.jsの主要開発者はCommonJSから離れていると語った[5]。
Remove ads
仕様
CommonJSで定められた仕様としては以下のようなものがある[6] なおModuleとPromiseについては、後に2015年のECMAScript 6で標準規格が定められている。[※ 1]。
現行
- Modules/1.0 (Modules/1.1で廃止)
- Modules/1.1
- Modules/1.1.1
- Packages/1.0
- Promises/B
- Promises/C
- System/1.0
提案
- Binary/B
- Binary/F
- Console
- Encodings/A
- Filesystem/A
- Filesystem/A/0
- Modules/Async/A
- Modules/Transport/B
- Packages/1.1
- Packages/Mappings
- Unit Testing/1.0
実装
- Akshell[7]
- Common Node[8]
- CommonJS Compiler - ブラウザ環境でCommon JSモジュールを使うためのコマンドラインツール[9]
- CommonJS for PHP - PHP 5.3以降用の軽量CommonJS実装[10]
- CouchDB[11]
- Flusspferd[12]
- GPSEE[13]
- Jetpack
- Joyent Smart Platform[14]
- JSBuild[15]
- MongoDB[16]
- Narwhal[17]
- Node.js[18]
- Persevere[19]
- PINF JavaScript Loader[20]
- RingoJS[21]
- SilkJS[22]
- SproutCore[23]
- TeaJS[24]
- Wakanda[25]
- XULJet[26]
注釈
- CommonJSの仕様に近いが、CommonJSがそのまま採用されたわけではない。
出典
関連項目
外部リンク
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads