このブログは、旧・はてなダイアリー「檜山正幸のキマイラ飼育記 メモ編」(http://d.hatena.ne.jp/m-hiyama-memo/)のデータを移行・保存したものであり、今後(2019年1月以降)更新の予定はありません。

今後の更新は、新しいブログ http://m-hiyama-memo.hatenablog.com/ で行います。

Webフロントエンドでの話 その3

個別のツールやらその使い方やらでは問題があったりするが、全体としてみるとWebフロントエンドというか、むしろNode.js中心のコミュニティはなかなか凄いものがある。人口が多いとエネルギーの総量も大きいから(中国が凄いのと同じかも)。

まず、感心してしまうのは、NPMインフラ、あるいはNPMエコシステムだ。npmという個別ツールの話ではなくて、package.jsonフォーマット、Semantic Versioning、アーカイブ管理サイト https://www.npmjs.com/ 、それとgithubも絡んだその全体。

bowerが滅んだことは、むしろNPMエコシステムの健全性を示しているだろう。多元管理を排除して、単一の信頼できる管理システム/配布システムに集約されたのだから。大文字NPMはツールnpmのことではなくて、フォーマット/サイト/ツール群/ユーザーコミュニティとかを全部ひっくるめて言っている。ツールnpmがyarnに取って代わられる、とかは別にどうでもいい。

中核処理系であるnode.js自体のバージョンマネージャnvmや(yarnの)バージョン固定yarn.lockとかも素晴らしい。

こういうインフラ/エコシステムがあると、Webフロントエンドに限らず、分野にこだわらず、なんらかのパッケージ/モジュールはNPMインフラに載せたいと思ってしまう。

そういえば、PythonPyPI/pipなどが同じようなエコシステムを作っている。C(だったか?)で書かれたuWSGIがPyPI and pipで配布されていた。Pythonの配布物でもCソースをコンパイルするメカニズムがあったので、フルCのパッケージでもPyPIで配布できる。同じように、JavaScriptではない配布もNPMインフラで配布されるようになるのではないかな。

もはや、配布インフラは言語ごとにあるものではなくて、利便性やら普遍性で選ばれるのではないか。現状、NPMインフラが利便性・普遍性で一番のような気がする。