Túl sok időt tölt JavaScript kód létrehozásával? Olvasson tovább, hogy megismerje a különböző Node.js csomagokat, amelyek produktívá és egyszerűvé tehetik a JavaScript-fejlesztők életét.
A JavaScript egy szinkron egyszálú nyelv. Ez a legszélesebb körben használt programozási nyelv szoftver- és alkalmazásfejlesztésben. Számos keretrendszer, például a Reactjs, az Angularjs, a Vuejs, az Expressjs és a Node.js az alapnyelvvel, a JavaScripttel került kifejlesztésre.
Sok fejlesztő szembesül problémákkal a JavaScript-kódolás során különféle összetett fogalmak miatt, például ígéretek, eseményhurok, visszahívások, emelés, lezárások stb.
A JavaScript fejlesztésének megkönnyítése érdekében számos Node.js csomag elérhető, amelyek segítenek a hibák kezelésében, a kód formázásában, a fájlok törlésében, a kód hibakeresésében, a biztonság biztosításában stb. Néhányan interaktív parancssori felhasználói felületet is biztosítanak a CPU teljesítményének jobb vizuális megjelenítéséhez, a feldolgozási kapacitás, a hibák súlyossága stb.
Tartalomjegyzék
Retire.js
A Retire.js egy Javascript-könyvtár, amely a Javascript-könyvtár más verzióihoz kapcsolódó biztonsági rések listáját tartalmazza.
Használható Chrome-bővítményként, Firefox-bővítményként, parancssori szkennerként, Grunt-bővítményként stb. A következő paranccsal telepíthető:
$ npm install -g retire
A Retire.js különféle parancsokkal rendelkezik a JavaScript- és a csomópontfájlok vizsgálatához. Átvizsgálja a JavaScript-webhelyeket, és naplózza a figyelmeztetéseket a fejlesztői konzolon. A Retire.js a 13-as kilépési kódot állítja elő, amikor sebezhetőséget talál. A Gulp Task automatikusan átvizsgálja a fájlokat, és jelenti a biztonsági réseket.
Np
Az Np egy JavaScript-csomag, amely különféle funkciókat kínál, például kódtisztítást, függőségek telepítését, csomagok és címkék közzétételét stb. Biztosítja, hogy a kód a fő ágba kerüljön, és interaktív felhasználói felületet biztosít.
A kéttényezős hitelesítés az új adattárak biztonságának biztosítására szolgál. A függőségek újratelepítésével biztosítja, hogy a munka a legújabb verzióval történjen. A legújabb verzió npm-re van tolva. A következő paranccsal telepíthető:
$ npm install --global np
Különféle funkciói közé tartozik a kód közzététele bármely ágból, alkönyvtárak létrehozása a közzétételhez, a kódtisztítás és a tesztelés kihagyása stb. Az np konfigurálása globálisan és lokálisan is elvégezhető az np konfigurációs fájljaiban található CLI jelzők segítségével, például az np-config.js és nem -config.json.
ESLint
Az ESLint egy JavaScript csomageszköz, amely elemzi a JavaScriptet és azonosítja a mintákat az ECMA/JavaScript kódban. Az AST segítségével értékeli a kódmintákat. Az eszköz összes szabálya beépülő modulok formájában van definiálva, és futás közben dinamikusan hozzáadható. Az ESLint az alábbi paranccsal telepíthető:
$ npm init @eslint/config
A fenti paranccsal történő telepítés után egy .eslintrc fájl jön létre egy sor szabálykészlettel, hibadefiníciókkal és a hozzájuk tartozó feltételekkel. Az ESLint lehetővé teszi az összes függőség meghatározását a felhasználó .lock fájljában, és nem használ saját .lock fájlt. Ezenkívül rendkívül biztonságos.
Shelljs
A Shelljs egy olyan környezet, ahol a UNIX parancsok bármely operációs rendszeren végrehajthatók a Node.js API-n keresztül. A Shelljs hordozható, és támogatja a harmadik féltől származó beépülő modulokat is. A különböző parancsok használhatók: echo, exec, chmod, pushd, popd, cd, cat stb. A következő parancs használható a Shelljs telepítéséhez.
$ npm install [-g] shelljs
Különféle projektekben tesztelték, mint például a Firefox, JSHint, ESLint, Zepto stb. A Shelljs csomagok helyi importálása előnyben részesített a globális importtal szemben. Beállítható néma, végzetes, bőbeszédű stb.
Omlett
Az Omelette sablont biztosít a Node és Deno projektek kódjának automatikus kitöltéséhez. Szuper egyszerű API-t használ, és támogatja az Async API-t és a Tree API-t is. Az alábbiakban látható egy minta kódrészlet az Omelette megvalósításához:
import * as omelette from 'omelette'; const firstArgument = ({ reply }) => { reply([ 'beautiful', 'cruel', 'far' ]) } const planet = ({ reply }) => { reply([ 'world', 'mars', 'pluto' ]) } omelette`hello|hi ${firstArgument} ${planet}`.init()
Az omlett importálása után létre kell hozni egy Omlett objektumot. Ezután a kód automatikus kiegészítésére szolgáló különféle funkciók, például a setupShellInitFile() a beállításhoz, a cleanupShellInitFile() a tisztításhoz, meghívhatók az omlett objektumon az automatikus kódkiegészítéshez. Támogatja továbbá a Lambda függvények használatát összetett sablon literális API-k létrehozásához.
Csinosabb
A Prettier a kód formázására szolgál. Segít a tabulátorok megadásában, nyomon követi a maximális tartalmat egy sorban, és biztosítja a megfelelő behúzást a feltételes és ciklusutasításokon belül. A kódot tiszta és olvasható formátummá alakítja. Például:
A kódrészlet alább látható,
foo(reallyLongArg(), omgSoManyParameters(), IShouldRefactorThis(), isThereSeriouslyAnotherOne());
A Prettier bővítmény használatakor az alábbira konvertálódik:
foo( reallyLongArg(), omgSoManyParameters(), IShouldRefactorThis(), isThereSeriouslyAnotherOne() );
Futhat CI-környezetekben, integrált fejlesztői környezetekben (IDE) stb.
jscpd
A jscpd egy technikai adósságkezelési szolgáltatás. Ez egy JavaScript-csomag, amely segít megtalálni az ismétlődő kódrészleteket különböző kódokban és digitális dokumentumokban. A Rabin-Karp nevű karakterlánc-illesztő algoritmust használja a kódduplikációk megtalálásához.
A jscpd/core képes felismerni a kódduplikációt különböző környezetekben, a jspd/tokenizer pedig a program forráskódjának tokenizálására szolgál. Ezeken kívül sok más csomag, mint például a html-reporter, a badge-reporter, a leveldb-store stb. A jscpd telepítésének parancsa a következő:
$ npm install -g jscpd
A jscpd-t a GitHub Super Linter, a Code-Inspector, a Mega-Linter, a Codacy stb. használja. Mindegyikük más-más célra használja a jscpd-t. Használják természetes nyelvi feldolgozásra, soraggregátorokra, kódelemzésre stb.
Vtop
A Vtop egy monitor, amely grafikusan ábrázolja a parancssori tevékenységet. Információkat ad a CPU kihasználtságáról a különböző futó szálak és folyamatok elemzésével, és grafikus ábrázolásával diagramokon, tüskéken stb. JavaScript, Makefile és Shell használatával készült. A Vtop telepítésének parancsa a következő:
$ npm install -g vtop
Különféle témák és színkódok használhatók a grafikus felhasználói felület vonzóbbá tételéhez a követelményeknek megfelelően. Különféle billentyűparancsok, mint például az „u” a frissítéshez, a „g” a lista legfelső folyamatához, a „G” a lista végére, a „dd” az adott grp-hez tartozó folyamatok leállításához stb. használható.
Standardjs
A Standardjs egy JavaScript-könyvtár, amely automatizálja a fájlkonfigurációt, formázza a kódot, és gyorsan megtalálja a programozók kivételkezelésével kapcsolatos problémákat. A Standardjs telepítésének parancsa az alábbiakban található:
$ npm install standard --global
A telepítés után a parancssori felület „standard” parancsával futtathatja egy fájlon/kódrészleten. A Standardjs összes függősége hozzáadható a „standard: „*” definiálásával a package.json fájl függőségi objektumában.
Beépülő modulként is telepíthető különféle szövegszerkesztőkhöz, mint például a Visual Studio Code, Sublime Text, Atom, Vim, Brackets stb. A Node.js, Expressjs, npm, Brave és GoDaddy a Standardjs-t használják üzleti igényeik kielégítésére.
NodeJsScan
A NodeJsScan egy statikus biztonsági kódolvasó a Node.js alkalmazásokhoz. Egy interaktív felhasználói felületen keresztül tájékoztat az alkalmazás biztonsági állapotáról. Integrálható különféle alkalmazásokkal, mint például a Slack a riasztásokhoz/értesítésekhez, az e-mailes figyelmeztetésekhez a NodeJsScan settings.py fájljában található SMTP-beállítások konfigurálásával, CI/CD-folyamat stb. Segít a docker képek létrehozásában is.
Naplózik a hibákat, információkat és figyelmeztető üzeneteket. A hiba részletes leírása, például az előfordulásának oka, súlyossága, a sorok száma, ahol a hibák előfordultak, a vizsgált fájlok és a talált problémák száma stb. A jobb olvashatóság és elemzés érdekében grafikonokat és diagramokat is ábrázolunk.
Szemét
A Kuka egy JavaScript-könyvtár, amely a törölt fájlokat a kukába helyezi ahelyett, hogy véglegesen törli őket. Támogatja a Mac, Linux és Windows rendszereket. A Trash telepítéséhez használt parancs a következő:
$ npm install trash
A Trash egy API, amely a trash() függvény meghívásakor a bemenetet és a beállításokat függvényparaméterekként veszi. A bemenet lehet egy karakterlánc vagy egy karakterlánc tömb. Az opciók lehetnek objektumok. A trash függvény ígéretet ad vissza. A különböző operációs rendszerekben különböző parancsokat használnak. A macOS-trash a MacO-kban, az XDG Spec Linuxban, a Lomtár pedig a Windowsban használatos.
Xo
Az Xo egy JavaScript és TypeScript burkoló, amely alatta ESLint használ. Segít olvasható kód létrehozásában azáltal, hogy behúzza a kódot, pontosvesszőt, idézőjeleket, vesszőt stb. ad hozzá, ahol szükséges. Sok ESLint bővítmény, például az unicorn, az import, az ava, az n stb. használható az Xo-val. Az xo telepítéséhez használt parancs a következő:
$ npm install xo --save-dev
A problémák automatikusan kijavíthatók a $xo –fix paranccsal. Az Xo a package.json fájl xo tulajdonságának használatával konfigurálható. Beépülő modulként telepíthető különféle szerkesztőkhöz, például Vim, Visual Studio Code, Atom, Sublime Text, Emacs stb.
diff2html
A diff2html a „diff parser and pretty HTML generator” rövidítése. Kiemeli az aktuális verzió kódjának változásait az előző verzióhoz képest. Segít a fejlesztőknek könnyen azonosítani és megérteni a végrehajtott változtatásokat. Ezt színkódok segítségével teszi.
Ezt a soronkénti és egymás melletti változások kiemelésével teszi. Kiemeli a kód szintaktikai változásait, és csoportosítja a hasonló sorokat a kódváltozások egyszerű követése érdekében. A diff2html telepítésének parancsa a következő:
$ npm install diff2html
A parancssorral is integrálva van. Egyes diff2html-t használó projektek a következők: Jenkins, Codacy, Ungit, git-explorer, code-annotation stb.
Kréta
A Chalk egy Node.js modul, amely segít a kód formázásában és stílusában. Segít a színes témák létrehozásában és szöveghez való hozzáadásában is. Ez egy kifejező API, és a teljesítménye kiváló. Stílusokat ágyaz be, és nincsenek függőségei. A Chalk használata az alábbi kódrészletben látható:
import chalk from 'chalk'; console.log(chalk.blue('Hello world!'));
chalk.level határozza meg az egyes szinteken támogatott színeket. A „0” azt jelzi, hogy az összes szín le van tiltva, az „1” az alapvető színek támogatását, a „2” a 256 színt, a „3” pedig a Truecolor támogatását jelzi. A krétával támogatott szöveg formázására szolgáló különféle stílusmódosítók: inverz, rejtett, látható, áthúzott, félkövér, visszaállítás, dőlt, aláhúzott, felülhúzott, halvány stb.
NpKill
Az Npkill egy olyan eszköz, amely eltávolítja a régi és nehéz csomópont-modul mappákat. Segít a csomópontmodulok nagyon gyors eltávolításában, és helyet szabadít fel a rendszerben. TypeScript, JavaScript és Go segítségével fejlesztették ki. Nincs függősége, és könnyen használható. Az Npkill telepítéséhez használt parancs a következő:
$ npm i -g npkill
Az útvonalban az npkill paranccsal megadott összes csomóponti modul törlődik. A csomópontmodulok törlésekor azonban óvatosnak kell lenni, mert az visszafordíthatatlan. Ha egy aktív projekt moduljai törlődnek a folyamat során, a fájlok megsérülnek, és a csomópontmodulokat újra kell telepíteni.
fkill-cli
Az fkill-cli egy nyílt forráskódú és interaktív parancssori eszköz, amely leállítja a Linux folyamatait és portjait. A Node.js segítségével fejlesztették ki. Egyszerű, ingyenes, biztonságos és több platformon is kompatibilis. Windowson, Linuxon és macOS-en működik. Az fkill-cli telepítéséhez használt parancs a következő:
$ npm install --global fkill-cli
A folyamat leállításához szükséges a folyamat neve és azonosítója. A „-f” kényszeríti a művelet végrehajtását, míg a „-v” parancs folyamatargumentumokat jelenít meg. Az fkill API bemeneteket és opciókat vesz argumentumként, és egy ígéret objektumot ad vissza. Egyes lehetőségek a következők: force, silent, ignoreCase, tree és forceAfterTimeout.
Localtunel
A Localtunnel egy olyan platform, amely lehetővé teszi a webszolgáltatások külső környezetből történő megosztását a számítógép helyi környezetével a rendszer DNS- és tűzfalbeállításainak megváltoztatása nélkül.
A kéréseket a Localtunnel proxyzza, és egy nyilvánosan elérhető URL hozzárendelése után továbbítja a helyileg telepített kiszolgálóhoz. A Localtunnel telepítéséhez használt parancs a következő:
$ npm install -g localtunnel
Biztonságos és HTTPS kéréseket használ. Ezek az API-k webhookok tesztelésére használhatók. A felhasználói felület a Localtunnel segítségével felhőböngészőben tesztelhető.
Inquirer.js
Az Inquirer.js egy interaktív parancssori felhasználói felület a Node.js alkalmazásokhoz. Megkönnyíti a hibák keresését, a bemenet elemzését, a válaszok érvényesítését és a hierarchikus promptok kezelését. Funkcióinak megvalósításához natív ESM modulokat használ. Az Inquirer.js telepítéséhez használt parancs a következő:
$ npm install --save inquirer
A különféle módszerek közé tartozik a prompt, registerPrompt, createPromptModule stb. A prompt() egy olyan függvény, amely kérdést és választ fogad bemenetként, és ígéretet ad vissza, amikor meghívják.
A Question egy olyan objektum, amely a kérdéshez kapcsolódó értékek, például típus, üzenet, alapértelmezett, választási lehetőségek, szűrő stb. kivonatolt változata. A válaszkulcs-érték objektumpár az ügyfél válaszainak kivonatolt változatát tartalmazza. A kulcs a kérdés tulajdonság, míg az érték tartalmazhat megerősítést, bevitelt, számot, nyerslistát stb.
http-szerver
A http-szerver egy parancssori statikus http-szerver. Ez egyszerű, és nem igényel semmilyen konfigurációt. 2 fájlból áll: index.html és 404.html. Az index.html az alapértelmezett fájl, amely a kérésekre kerül megjelenítésre. A 404.html akkor jelenik meg, ha egy fájl nem található. A http-server telepítéséhez használt parancs a következő:
$ npm install --global http-server
HTML és JavaScript segítségével fejlesztették ki. TLS/SSL tanúsítványokon keresztül biztosítja a biztonságot. Az RSA algoritmust használja a kulcsok titkosításához és visszafejtéséhez. Azt is lehetővé teszi, hogy biztonsági okokból jelszót adjon meg egy privát kulccsal együtt.
Végső szavak
A JavaScript a szoftverfejlesztés legszélesebb körben használt programozási nyelve. A fejlesztők életét megkönnyítendő különféle Node.js csomagokat fejlesztettek ki.
A Node.js csomagok, mint a Retire.js, Localtunnel, Xo, Inquirer.js, Shelljs, fpkill, NodeJsScan, Prettier stb. használhatók kód formázására, biztonság garantálására, kódmódosítások kiemelésére, nehéz és nem kívánt csomópontmodulok törlésére stb. Ez segít a fejlesztőknek a kód hatékony hibakeresésében, írásában és kezelésében.
Olvashat a Node.js és az NPM Windows és macOS rendszeren történő telepítéséről is.