NPMとは何ですか? あなたはそれができると思いますか?
「npm」でUPNG.jsを公開するには、特別なソフトウェアをダウンロードしてインストールする必要があるようです。 ライブラリを更新するとき、GitHubとnpmの両方で更新する必要がありますか、それともnpmはどういうわけかGitHubに接続して最新バージョンをダウンロードできますか?
こんにちは! 申し訳ありませんが、NodeJS / NPMを知らなかったとは知りませんでした。 NPMは、地球上で最大のパッケージ/依存関係管理ソリューションです。 コードはまだgithubにあり、開発者はコードをより快適にダウンロードして使用できるようになります。
つまり、コンソールコマンドを介してインストールします( npm install upng
)
たとえば、 require('upng')
を介した使用。 また、グローバルオブジェクトの名前空間( window.upng
))を散らかすことを避けたいと思います。
このコードはechojs.comに投稿された
NPMに公開するプルリクエストを作成する時間を見つけることができるかどうかを確認しますが、ライブラリを作成したので、NPMに公開するのはあなただけです。 ドキュメントはここにあります: https :
彼らはウェブインターフェースを持っていますか? 私はWebインターフェイスを介してGitHubを使用しています。 12 kBをサーバーに送信するためだけに、ソフトウェアをダウンロードしてインストールするのはおかしなことに思えます。
いいえ、ありません。 特別なこのパッケージマネージャーソフトウェア( npm )をインストールする必要があります。このソフトウェアは、独自の仮想マシン( node.js )で実行され、同梱されています。 後者は、Webサーバー、デスクトップアプリケーションを実行するためのプラットフォーム、またはArduinoやRaspberryPiを介して物理デバイスをプラットフォームとしてよく使用されます。
コードで「グローバルエクスポート」パターンを使用していることがわかりますが、これはもう推奨されていません。 あなたは少なくとも必要CommonJSのモジュール、より良い- UMDや理想的ES6モジュール一部バンドラにより、UMDにtranspiled、同様にWebPACKの、ブランチやロールアップ(以上、これらの多くのがあります)。
コードを読みやすく、誰もが賞賛するためには、EcmaScript言語の最新機能を使用してから、おそらくBabelを使用してES5に
構築するのはライブラリであるため、基本的にEcmaScriptのスーパーセットであるTypeScriptを使用して、型署名とコンパイル時の型チェックを提供することをお勧めします(TypeScriptはES5またはES6のいずれかのJavaScriptにコンパイルされるため、可能性があります。それと一緒にバベルを使用しないでください)。 TypeScriptを作成していない人でも、 VSCodeのような最新のエディターはTypeScriptタイプに基づいてタイプヒントを表示できるため、TypeScriptの
別のトピックはテスト駆動開発です。 コードのテストを作成しなかったことがわかります。これは、オープンソースコミュニティでは受け入れられなくなりました。 Mocha 、 Jasmine 、 Avaなどのテストランナーと、アサーションライブラリの1つ(Chai 、 PowerAssert、または既にインストールされているnode.jsの組み込みassert
関数)を必ず選択してください。 理想的には、各デプロイの前に、ブラウザースタックまたはSauceLabsでKarmaを介してクロスブラウザーのテストを実行し、コードがどこでも機能することを確認します。
あなたがものを構築し、テストし、すべてのことtranspilationのための継続的インテグレーションサーバを使用する場合は、追加することができます空想のバッジをあなたのGitHubのリポジトリまたはにREADMEにGitHubのページ。
それは氷山の一角に過ぎません。 フロントエンド開発AD2017へようこそ。
PS
また、これをすべて無視して、これまでと同じように素晴らしい作業を続けることもできます。
コメントありがとうございます。 これらすべてのプログラムのダウンロード、インストール、および使用方法の学習には、UPNG.jsの開発に費やした時間よりも時間がかかるようです。 他の目的には必要ありません。 したがって、私はそのタスクを他の誰かに任せることにしました(npmまたは他の「コードデータベース」/ WebサイトでUPNG.jsを自由に公開してください)。
PS私はまだ、「標準のjavascript環境」を想像するときよりも、Node.js(何千人もの人々が持っている)ではなく、Webブラウザー(何十億人もの人々が持っている)を想像するべきだと思います。
最も参考になるコメント
いいえ、ありません。 特別なこのパッケージマネージャーソフトウェア( npm )をインストールする必要があります。このソフトウェアは、独自の仮想マシン( node.js )で実行され、同梱されています。 後者は、Webサーバー、デスクトップアプリケーションを実行するためのプラットフォーム、またはArduinoやRaspberryPiを介して物理デバイスをプラットフォームとしてよく使用されます。
コードで「グローバルエクスポート」パターンを使用していることがわかりますが、これはもう推奨されていません。 あなたは少なくとも必要CommonJSのモジュール、より良い- UMDや理想的ES6モジュール一部バンドラにより、UMDにtranspiled、同様にWebPACKの、ブランチやロールアップ(以上、これらの多くのがあります)。
コードを読みやすく、誰もが賞賛するためには、EcmaScript言語の最新機能を使用してから、おそらくBabelを使用してES5に
構築するのはライブラリであるため、基本的にEcmaScriptのスーパーセットであるTypeScriptを使用して、型署名とコンパイル時の型チェックを提供することをお勧めします(TypeScriptはES5またはES6のいずれかのJavaScriptにコンパイルされるため、可能性があります。それと一緒にバベルを使用しないでください)。 TypeScriptを作成していない人でも、 VSCodeのような最新のエディターはTypeScriptタイプに基づいてタイプヒントを表示できるため、TypeScriptの
別のトピックはテスト駆動開発です。 コードのテストを作成しなかったことがわかります。これは、オープンソースコミュニティでは受け入れられなくなりました。 Mocha 、 Jasmine 、 Avaなどのテストランナーと、アサーションライブラリの1つ(Chai 、 PowerAssert、または既にインストールされているnode.jsの組み込み
assert
関数)を必ず選択してください。 理想的には、各デプロイの前に、ブラウザースタックまたはSauceLabsでKarmaを介してクロスブラウザーのテストを実行し、コードがどこでも機能することを確認します。あなたがものを構築し、テストし、すべてのことtranspilationのための継続的インテグレーションサーバを使用する場合は、追加することができます空想のバッジをあなたのGitHubのリポジトリまたはにREADMEにGitHubのページ。
それは氷山の一角に過ぎません。 フロントエンド開発AD2017へようこそ。
PS
また、これをすべて無視して、これまでと同じように素晴らしい作業を続けることもできます。