npmのpackage.jsonファイルを調べたところ、npmは実際にはlodashなどの依存性の高いnode.jsパッケージであることがわかりました。これは、多くのnpmパッケージを破ったleft-padパッケージで発生した状況がnpmにも影響する可能性があることを意味します。 私はいくつかの傾向があることを知っています:pipはPython、RubyのRubyGems、PHPのComposer、JavaのMavenなどで書かれています。しかし、ターゲット言語でパッケージマネージャーを書くのは良いですか?なぜnpmはJavaScriptで書かれたのですか?
答えて
非常に理由がNPMは、パッケージマネージャは、その実行時の言語で書かれてすることは自然であるのNode.js
JavaScriptのランタイム環境のデフォルトのパッケージマネージャであるということです。
より具体的には、npmは、npm-を使用して書かれました。JavaScriptはnpm leftpadの事件を何もしません。
- ソフトウェア依存関係を管理するためのツールです。彼らは1つを使用する必要があります。彼らは他の誰かを使用することを提案しますか?もちろん、あなたがあなたの製品を信頼するならば、それをあなた自身で使うつもりです。
- 左のパッド「インシデント」は、深刻な問題が発生するまで、明らかに深刻な懸念を予測したり考えなかったりしたソフトウェアの欠陥以上のポリシー上の欠陥でした。したがって、なぜこれがnpmを使用しない理由になるのでしょうか。
- ホストされている何十万ものパッケージのうち、あまりにも頻繁に起こったことはありませんか、ずっと前に修正されていたでしょう。それはかなり印象的です。
- キャッシングポリシーを更新するだけで簡単に修正でき、npmに対する脅威でもありません。
- 他のパッケージ管理ツールにも同様の問題があった(あるいは悪い)。たとえば、資金調達が不足しているため、Mavenリポジトリ全体がオフラインになりました。これは集中管理されているため、npmには起こりそうにないです。集中していることを確認することに関心のある多くの大きなステークホルダーがいます。
- このようなインシデントは、生態系をより安定して成熟させるものです。
- すべてのストーリーと同様に、これはすぐに吹き飛ばされます。
_「npmには起こりそうにありません。 npmは分散されておらず、サーバーはまだフリーではありません。 –
そのためですnpmは集中管理されています。 Google、マイクロソフト、リンゴなどの企業はあまりにも多くの企業がnpmにソフトウェアを持っているので、資金が足りなくなったら救済するためのレポは1つだけです。 Mavenは分散化されているため、いずれか1つのリポジトリが失敗し、致命傷を引き起こす可能性があります。 – chriskelly
面白い、それは意味がある:) –
- 1. なぜnpmでインストールされたnpmパッケージしか実行できないのですか?
- 2. npmがインストールされないのはなぜpackage.jsonからの反応ですか?
- 3. Javascriptフィルタのフォーカスが失われたのはなぜですか
- 4. npmのインストールがディレクトリ内にないのはなぜですか?
- 5. javascriptでレンダリングされたナビゲーションバーがクロールされないのはなぜですか?
- 6. npm:バージョン "0.1"が無効なのはなぜですか?
- 7. Node.jsがC/C++プログラミング言語で書かれたのはなぜですか?
- 8. なぜjavascriptがHTMLコードを上書きするのですか
- 9. cpmで書かれたnpmパケットをデバッグする方法
- 10. BrowserifyがNPMパッケージのpackage.jsonを含むのはなぜですか?
- 11. javascriptでは、なぜ{}!== Object()ですか?
- 12. なぜJavaScriptでは{}!=({})ですか?
- 13. npmによってpackage.jsonが更新されないのはなぜですか?
- 14. npmドッカーファイルがループしているのはなぜですか?
- 15. popper.jsサンプルのnpmモジュール:なぜ1.13.0はリリースではないのですか?
- 16. file_put_contentsが上書きされないのはなぜですか?
- 17. Angular2が複製されたnpmリポジトリの一部でないのはなぜですか?
- 18. なぜJavascript Singletonはこのように書かれていますか?
- 19. Javascriptコードが実行されないのはなぜですか?
- 20. これはなぜ[JavaScript]エラーをスローしないのですか?
- 21. Javascriptファイルが実行されないのはなぜですか?
- 22. javascriptで書かれた検索式パーサー
- 23. JavaScriptで書かれたJavaパーサ
- 24. 隠された入力の書き込みはなぜですか?true/falseではなくvalue = "value"ですか?
- 25. KeyErrorなぜ辞書は空ですか?
- 26. npmの名前がNode Package Managerでないのはなぜですか?
- 27. なぜnpm pruneでnode_modulesからフォルダを削除しないのですか?
- 28. インタビューで私のJavaScriptコードが受け入れられなかったのはなぜですか?
- 29. 配列要素がこのJavaScriptコードで上書きされないのはなぜですか?
- 30. SSL証明書が失効したのはなぜですか?
"なぜですか?" –
サイドノートでは、 'node'はPythonとC++で動作するので、ノードスタック全体が単独で書かれているのと同じではありません。JS – Quill