Upng.js: NPM-Paket bitte

Erstellt am 29. März 2017  ·  6Kommentare  ·  Quelle: photopea/UPNG.js

Hilfreichster Kommentar

Nein, das tun sie nicht. Sie müssen eine spezielle Paketmanager-Software ( npm ) installieren, die auf einer eigenen virtuellen Maschine ( node.js ) läuft und mit ihr oft als Webserver, Plattform zum Ausführen von Desktop-Anwendungen oder sogar zur Steuerung physischer Geräte über Arduino oder Raspberry Pi verwendet.

Ich kann sehen, dass Sie in Ihrem Code das Muster "globaler Export" verwenden, das nicht mehr empfohlen wird. Sie benötigen mindestens ein CommonJS- Modul, besser - UMD oder idealerweise ein ES6-Modul , das von einem Bundler wie Brunch oder Rollup in UMD transpiliert wurde (davon gibt es noch viel mehr).

Um Code lesbar und bewundert von allen , sollten Sie die neuesten Funktionen von EcmaScript Sprache verwenden und dann transpile es ES5, wahrscheinlich mit Babel .

Da es sich bei dem, was Sie erstellen, um eine Bibliothek handelt, möchten Sie vielleicht TypeScript verwenden , das im Grunde genommen eine Obermenge von EcmaScript ist und Typsignaturen und Typprüfungen zur Kompilierzeit bereitstellt (TypeScript wird in JavaScript, entweder ES5 oder ES6, kompiliert, also können oder können Sie Babel nicht dazu verwenden). Selbst Leute, die kein TypeScript schreiben, würden davon profitieren, da moderne Editoren wie VSCode in der Lage sind, anzuzeigen .

Ein separates Thema ist die testgetriebene Entwicklung. Ich kann sehen, dass Sie keinen Test für Ihren Code geschrieben haben, was in der Open-Source-Community nicht mehr akzeptabel ist. Stellen Sie sicher, dass Sie einen Testläufer wie Mocha , Jasmine oder Ava zusammen mit einer der Assertion-Bibliotheken auswählen : Chai , PowerAssert oder vielleicht die integrierte assert Funktion von node.js, da Sie sie bereits installiert haben. Idealerweise führen Sie vor jeder Bereitstellung browserübergreifende Tests auf BrowserStack oder SauceLabs über Karma durch, um sicherzustellen, dass Ihr Code überall funktioniert.

Wenn Sie den Continuous Integration-Server für all das Transpilieren, Erstellen und Testen verwenden, können Sie der README-Datei in Ihrem GitHub-Repository oder in Ihren GitHub-Seiten ausgefallene Badges hinzufügen.

Das ist nur eine Spitze des Eisbergs. Willkommen bei der Frontend-Entwicklung AD 2017.

PS
Sie können all dies auch ignorieren und einfach weiter so großartige Arbeit leisten, wie Sie es bisher getan haben!

Alle 6 Kommentare

Was ist NPM? Glaubst du, du kannst das?

Es scheint, als müsste ich spezielle Software herunterladen und installieren, um UPNG.js in "npm" zu veröffentlichen. Wenn ich meine Bibliothek aktualisiere, muss ich sie sowohl bei GitHub als auch bei npm aktualisieren, oder kann npm irgendwie eine Verbindung zu GitHub herstellen und die neueste Version herunterladen?

Hallo! Es tut mir leid, ich wusste nicht, dass Sie NodeJS/NPM nicht kennen. NPM ist die weltweit größte Paket-/Abhängigkeitsverwaltungslösung. Der Code lebt immer noch auf github, Entwickler können dann Ihren Code bequemer herunterladen und verwenden.
Das heißt: über Konsolenbefehle installieren ( npm install upng )
und Nutzung über require('upng') zum Beispiel. Außerdem möchten Sie vermeiden, dass Sie den globalen Objektnamensraum ( window.upng )) vermüllen.

Da dieser Code auf echojs.com gepostet wurde,

Ich werde sehen, ob ich die Zeit finde, eine Pull-Anfrage zu erstellen, um sie in NPM zu veröffentlichen, aber Sie sollten derjenige sein, der in NPM veröffentlicht, da Sie die Bibliothek erstellt haben. Die Dokumentation finden Sie hier: https://docs.npmjs.com/cli/publish

Das Erstellen des Pakets, um es für NPM verfügbar zu machen, ist ziemlich trivial.
Weitere Informationen finden Sie hier: https://docs.npmjs.com/cli/init

Haben sie ein Webinterface? Ich nutze GitHub über das Webinterface. Es erscheint mir verrückt, eine Software herunterzuladen und zu installieren, nur um 12 kB an einen Server zu senden.

Nein, das tun sie nicht. Sie müssen eine spezielle Paketmanager-Software ( npm ) installieren, die auf einer eigenen virtuellen Maschine ( node.js ) läuft und mit ihr oft als Webserver, Plattform zum Ausführen von Desktop-Anwendungen oder sogar zur Steuerung physischer Geräte über Arduino oder Raspberry Pi verwendet.

Ich kann sehen, dass Sie in Ihrem Code das Muster "globaler Export" verwenden, das nicht mehr empfohlen wird. Sie benötigen mindestens ein CommonJS- Modul, besser - UMD oder idealerweise ein ES6-Modul , das von einem Bundler wie Brunch oder Rollup in UMD transpiliert wurde (davon gibt es noch viel mehr).

Um Code lesbar und bewundert von allen , sollten Sie die neuesten Funktionen von EcmaScript Sprache verwenden und dann transpile es ES5, wahrscheinlich mit Babel .

Da es sich bei dem, was Sie erstellen, um eine Bibliothek handelt, möchten Sie vielleicht TypeScript verwenden , das im Grunde genommen eine Obermenge von EcmaScript ist und Typsignaturen und Typprüfungen zur Kompilierzeit bereitstellt (TypeScript wird in JavaScript, entweder ES5 oder ES6, kompiliert, also können oder können Sie Babel nicht dazu verwenden). Selbst Leute, die kein TypeScript schreiben, würden davon profitieren, da moderne Editoren wie VSCode in der Lage sind, anzuzeigen .

Ein separates Thema ist die testgetriebene Entwicklung. Ich kann sehen, dass Sie keinen Test für Ihren Code geschrieben haben, was in der Open-Source-Community nicht mehr akzeptabel ist. Stellen Sie sicher, dass Sie einen Testläufer wie Mocha , Jasmine oder Ava zusammen mit einer der Assertion-Bibliotheken auswählen : Chai , PowerAssert oder vielleicht die integrierte assert Funktion von node.js, da Sie sie bereits installiert haben. Idealerweise führen Sie vor jeder Bereitstellung browserübergreifende Tests auf BrowserStack oder SauceLabs über Karma durch, um sicherzustellen, dass Ihr Code überall funktioniert.

Wenn Sie den Continuous Integration-Server für all das Transpilieren, Erstellen und Testen verwenden, können Sie der README-Datei in Ihrem GitHub-Repository oder in Ihren GitHub-Seiten ausgefallene Badges hinzufügen.

Das ist nur eine Spitze des Eisbergs. Willkommen bei der Frontend-Entwicklung AD 2017.

PS
Sie können all dies auch ignorieren und einfach weiter so großartige Arbeit leisten, wie Sie es bisher getan haben!

Vielen Dank für Ihre Kommentare. Es scheint, dass das Herunterladen, Installieren und Erlernen der Verwendung all dieser Programme mehr Zeit in Anspruch nehmen würde, als ich mit der Entwicklung von UPNG.js verbracht habe. Für andere Zwecke brauche ich sie nicht. Daher habe ich beschlossen, diese Aufgabe jemand anderem zu überlassen (veröffentlichen Sie UPNG.js gerne auf npm oder anderen "Codedatenbanken" / Websites).

PS Ich denke immer noch, als wenn Sie sich eine "Standard-Javascript-Umgebung" vorstellen, sollten Sie sich nicht Node.js (was Tausende von Menschen haben) vorstellen, sondern einen Webbrowser (den Milliarden von Menschen haben).

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen

Verwandte Themen

Ser-Gen picture Ser-Gen  ·  5Kommentare

HRK44 picture HRK44  ·  9Kommentare

mn4367 picture mn4367  ·  16Kommentare

ghost picture ghost  ·  3Kommentare

mwawrusch picture mwawrusch  ·  3Kommentare