Node.js NPM -opetusohjelma: Moduulien luominen, laajentaminen ja julkaiseminen

Node.js-moduulit

Node.js:n moduuli on koodin looginen kapselointi yhteen yksikköön. On aina hyvä ohjelmointikäytäntö erottaa koodi aina siten, että se tekee siitä hallittavamman ja ylläpidettävämmän tulevia tarkoituksia varten. Siellä Node.js:n moduulit alkavat toimia.

Koska jokainen moduuli on itsenäinen kokonaisuus, jolla on omat kapseloidut toiminnallisuutensa, sitä voidaan hallita erillisenä työyksikkönä.

Mikä on Node.js:n moduuli?

Kuten aiemmin todettiin, Node js:n moduulit ovat tapa kapseloida koodi erilliseen loogiseen yksikköön. Markkinoilla on monia valmiita moduuleja, joita voidaan käyttää Node js:n sisällä.

Alla on joitain suosittuja moduuleja, joita käytetään Node js -sovelluksessa

  1. Express-kehys – Express on minimaalinen ja joustava Node js -verkkosovelluskehys, joka tarjoaa vankan joukon ominaisuuksia verkkoon ja mobile sovelluksissa.
  2. socket.io – Socket.IO mahdollistaa reaaliaikaisen kaksisuuntaisen tapahtumapohjaisen viestinnän. Tämä moduuli on hyvä chat-pohjaisten sovellusten luomiseen.
  3. Jade – Jade on korkean suorituskyvyn mallimoottori ja toteutettu JavaKäsikirjoitus solmulle ja selaimille.
  4. MongoDB - MongoDB Node.js-ohjain on virallisesti tuettu node.js-ohjain MongoDB.
  5. Restifioi – restify on kevyt kehys, samanlainen kuin express REST API:iden rakentamiseen
  6. sinikka – Bluebird on täysin varusteltu lupauskirjasto, joka keskittyy innovatiivisiin ominaisuuksiin ja suorituskykyyn

Moduulien käyttö Node.js:ssä

Moduulien käyttämiseksi a Node.js sovellus, ne on ensin asennettava Node-pakettienhallinnan avulla.

Alla oleva komentorivi näyttää kuinka moduuli "express" voidaan asentaa.

npm install express

Moduulien käyttäminen Node.js:ssä

  • Yllä oleva komento lataa tarvittavat tiedostot, jotka sisältävät "pikamoduulit" ja huolehtii myös asennuksesta
  • Kun moduuli on asennettu, sinun on käytettävä 'require'-avainsanaa, jotta voit käyttää moduulia Node.js-sovelluksessa. Tämä avainsana on tapa, jolla Node.js sisällyttää sovelluksen moduulin toiminnot.

Katsotaanpa esimerkkiä siitä, kuinka voimme käyttää "require" -avainsanaa. Alla oleva "Guru99"-koodiesimerkki näyttää, kuinka vaatia-toimintoa käytetään

Moduulien käyttäminen Node.js:ssä

var express=require('express');
var app=express();
app.set('view engine','jade');
app.get('/',function(req,res)
{
});
var server=app.listen(3000,function()
{
});
  1. Itse ensimmäisessä lauseessa käytämme "require" -avainsanaa sisällyttääksemme pikamoduulin. "Express"-moduuli on optimoitu JavaKäsikirjoitus kirjasto Node.js:n kehittämiseen. Tämä on yksi yleisimmin käytetyistä Node.js-moduuleista.
  2. Moduulin sisällyttämisen jälkeen objekti on luotava, jotta moduulin toimintoja voidaan käyttää. Täällä luodaan pikamoduulin objekti.
  3. Kun moduuli on sisällytetty "require"-komennolla ja "objekti" on luotu, pikamoduulin vaaditut menetelmät voidaan kutsua. Tässä käytämme set-komentoa näkymämoottorin asettamiseen, jota käytetään Node.js:ssä käytettävän mallinnuskoneen asettamiseen.
  4. Huomautus: -(Vain lukijan ymmärryksen vuoksi; mallinnusmoottori on tapa lisätä arvoja sovellukseen poimimalla dataa datatiedostoista. Tämä käsite on melko kuuluisa Angular JS:ssä, jossa aaltosulkeilla {{avain }} korvataan arvot Web-sivu. Sana "avain" aaltosulkeissa tarkoittaa periaatteessa muuttujaa, joka korvataan arvolla, kun sivu näytetään.)

  5. Tässä käytämme kuuntelumenetelmää saadaksemme sovelluksen kuuntelemaan tiettyä porttinumeroa.

Kuinka luoda NPM-moduuleja

Node.js voi luoda mukautettuja moduuleja ja antaa sinun sisällyttää kyseiset mukautetut moduulit Node.js-sovellukseesi.

Katsotaanpa yksinkertaista esimerkkiä siitä, kuinka voimme luoda oman moduulimme ja sisällyttää sen pääsovellustiedostoomme. Moduulimme tekee vain yksinkertaisen tehtävän lisäämällä kaksi numeroa.

Noudatetaan alla olevia ohjeita nähdäksesi kuinka voimme luoda moduuleja ja sisällyttää ne sovellukseemme.

Seuraavassa on vaiheittainen prosessi NPM-moduulien luomiseen

Vaihe 1) Luo tiedosto ja liitä alla oleva koodi
Luo tiedosto nimeltä "Addition.js" ja lisää alla oleva koodi. Tämä tiedosto sisältää moduulisi logiikan.

Alla on koodi, joka menee tähän tiedostoon;

NPM-moduulien luominen

var exports=module.exports={};
exports.AddNumber=function(a,b)
{
return a+b;
};
  1. Vienti-avainsanaa käytetään varmistamaan, että muut tiedostot voivat todella käyttää tässä tiedostossa määritettyjä toimintoja.
  2. Määritämme sitten funktion nimeltä 'AddNumber'. Tämä funktio on määritetty ottamaan 2 parametria, a ja b. Toiminto lisätään moduuliin "vientit", jotta toiminto on julkinen toiminto, jota muut sovellusmoduulit voivat käyttää.
  3. Viimeinkin saamme funktiomme palauttamaan parametrien lisäarvon.

Nyt kun olemme luoneet mukautetun moduulimme, jossa on toiminto lisätä 2 numeroa. Nyt on aika luoda sovellus, joka kutsuu tätä moduulia.

Seuraavassa vaiheessa näemme itse asiassa, kuinka luodaan sovellus, joka kutsuu mukautettua moduuliamme.

Vaihe 2) Luo sovellustiedosto
Luo tiedosto nimeltä "app.js", joka on pääsovellustiedostosi, ja lisää alla oleva koodi

NPM-moduulien luominen

var Addition=require('./Addition.js');
console.log(Addition.AddNumber(1,2));
  1. Käytämme "require" -avainsanaa sisällyttääksemme toiminnon Addition.js-tiedostoon.
  2. Koska Addition.js-tiedoston funktiot ovat nyt käytettävissä, voimme nyt kutsua AddNumber-funktiota. Funktiossa annamme 2 numeroa parametreina. Näytämme sitten arvon konsolissa.

NPM-moduulien luominen

ulostulo:

  • Kun suoritat app.js-tiedoston, saat konsolin lokiin tulosteen arvo 3.
  • Tämä johtuu siitä, että AddNumber-funktion kutsuminen Addition.js-tiedostossa onnistui ja palautettu arvo 3 näytettiin konsolissa.

Huomautus: – Emme käytä "Node-pakettien hallintaa" vielä Addition.js-moduulin asentamiseen. Tämä johtuu siitä, että moduuli on jo osa projektiamme paikallisella koneella. Node-paketinhallinta tulee kuvaan, kun julkaiset moduulin Internetissä, minkä näemme seuraavassa aiheessa.

Moduulien laajentaminen Node.js:ssä

Moduuleja luotaessa on myös mahdollista laajentaa tai periä yksi moduuli toisesta.

Nykyajan ohjelmoinnissa on melko yleistä rakentaa kirjasto yhteisistä moduuleista ja sitten laajentaa näiden yhteisten moduulien toimintoja tarvittaessa.

Katsotaanpa esimerkkiä siitä, kuinka voimme laajentaa moduuleja Node.js:ssä.

Vaihe 1) Luo perusmoduuli.

Luo esimerkissämme tiedosto nimeltä "Tutorial.js" ja sijoita alla oleva koodi.

Tässä koodissa luomme vain funktion, joka palauttaa merkkijonon konsoliin. Palautettu merkkijono on "Guru99 Tutorial".

Moduulien laajentaminen Node.js:ssä

var exports=module.exports={};
exports.tutorial=function()
{
console.log("Guru99 Tutorial")
}
  1. Vientimoduulia käytetään niin, että mikä tahansa tässä tiedostossa määritetty toiminto voi olla käytettävissä muissa Node.js:n moduuleissa
  2. Olemme luomassa toimintoa nimeltä tutorial, jota voidaan käyttää muissa Node.js-moduuleissa.
  3. Näytämme konsolissa merkkijonoa "Guru99 Tutorial", kun tätä toimintoa kutsutaan.

Nyt kun olemme luoneet perusmoduulimme nimeltä Tutorial.js. Nyt on aika luoda toinen moduuli, joka laajentaa tätä perusmoduulia.

Tutkimme, miten tämä tehdään seuraavassa vaiheessa.

Vaihe 2) Seuraavaksi luomme laajennetun moduulimme. Luo uusi tiedosto nimeltä "NodeTutorial.js" ja sijoita alla oleva koodi tiedostoon.

Moduulien laajentaminen Node.js:ssä

var Tutor=require('./Tutorial.js');
exports.NodeTutorial=function()
{
console.log("Node Tutorial")
function pTutor()
{
var PTutor=Tutor
PTutor.tutorial();
}
}

Or
var Tutor=require('./Tutorial.js');
exports.NodeTutorial=function()
{
console.log("Node Tutorial")
this.pTutor = function ()
{
var PTutor=Tutor
PTutor.tutorial();
}
}

Huomaa seuraavat avainkohdat yllä olevasta koodista

  1. Käytämme "require" -toimintoa itse uudessa moduulitiedostossa. Koska aiomme laajentaa olemassa olevaa moduulitiedostoa "Tutorial.js", meidän on ensin sisällytettävä se ennen sen laajentamista.
  2. Luomme sitten funktion nimeltä "Nodetutorial". Tämä toiminto tekee 2 asiaa,
  • Se lähettää konsoliin merkkijonon "Node Tutorial".
  • Se lähettää merkkijonon "Guru99 Tutorial" perusmoduulista "Tutorial.js" laajennettuun moduuliimme "NodeTutorial.js".
  1. Tässä suoritamme ensimmäisen vaiheen lähettääksemme merkkijonon "Node Tutorial" -sovellukseen konsoliin.
  2. Seuraava askel on kutsua toimintoa opetusmoduulistamme, joka tulostaa merkkijonon "Guru99 Tutorial" tiedostoon console.log.

Vaihe 3) Luo tärkein app.js-tiedosto, joka on pääsovellustiedostosi, ja sisällytä alla oleva koodi.

Moduulien laajentaminen Node.js:ssä

var localTutor=require('./NodeTutorial.js');
localTutor.NodeTutorial();
localTutor.NodeTutorial.pTutor();

Or use this code
var tut = new localTutor.NodeTutorial();  // Create and save object
tut.pTutor();  // Call function on object

Yllä oleva koodi tekee seuraavat asiat;

  1. Pääsovellustiedostomme nimi on nyt "NodeTutorial" -moduuli.
  2. Kutsumme "NodeTutorial" -toimintoa. Kutsumalla tätä toimintoa teksti "Node Tutorial" näkyy konsolin lokissa.
  3. Koska olemme laajentaneet Tutorial.js-moduuliamme ja paljastaneet pTutor-nimisen toiminnon. Se kutsuu myös Tutorial.js-moduulin opetusohjelmamoduulia, ja teksti "Guru99 Tutorial" näkyy myös konsolissa.

lähtö:

Koska olemme suorittaneet yllä olevan app.js-koodin käyttämällä Nodea, saamme seuraavan tulosteen console.log-tiedostossa

  • Solmun opetusohjelma
  • Guru99-opetusohjelma

NPM (Node Package Manager) Publish Package

Voit julkaista oman moduulinsa omaksi Github arkistoon.

Julkaisemalla moduulisi keskeiseen paikkaan sinun ei tarvitse asentaa itseäsi jokaiselle sitä vaativalle koneelle.

Sen sijaan voit käyttää npm:n asennuskomentoa ja asentaa julkaistun npm-moduulin.

Seuraavia vaiheita on noudatettava julkaistaksesi npm-moduuli

Vaihe 1) Luo arkistosi GitHubissa (online koodivaraston hallintatyökalu). Sitä voidaan käyttää koodivarastojesi isännöimiseen.

Vaihe 2) Sinun on kerrottava paikalliselle npm-asennukselle kuka olet. Tämä tarkoittaa, että meidän on kerrottava npm:lle, kuka on tämän moduulin kirjoittaja, mikä on sähköpostiosoite ja mikä tahansa yrityksen URL-osoite, joka on saatavilla ja joka on liitettävä tähän tunnukseen. Kaikki nämä tiedot lisätään npm-moduuliisi, kun se julkaistaan.

Alla olevat komennot asettavat npm-moduulin kirjoittajan nimen, sähköpostiosoitteen ja URL-osoitteen.

npm asettaa aloituksen tekijän nimen "Guru99".

npm aseta init-author-email "guru99@gmail.com"

npm asettaa init-author-url "http://Guru99.com"

Vaihe 3) Seuraava vaihe on kirjautua sisään npm:ään käyttämällä viimeisessä vaiheessa annettuja tunnistetietoja. Kirjaudu sisään käyttämällä alla olevaa komentoa

npm login

Vaihe 4) Alusta paketti – Seuraava vaihe on paketin alustaminen paketti.json-tiedoston luomiseksi. Tämä voidaan tehdä antamalla alla oleva komento

npm init

Kun annat yllä olevan komennon, sinulta kysytään joitain kysymyksiä. Tärkein niistä on moduulisi versionumero.

Vaihe 5) Julkaise GitHubissa – Seuraava vaihe on julkaista lähdetiedostot GitHubissa. Tämä voidaan tehdä suorittamalla alla olevat komennot.

git add.
git commit -m "Initial release"
git tag v0.0.1 
git push origin master --tags

Vaihe 6) Julkaise moduulisi – Viimeinen bitti on julkaista moduuli npm-rekisteriin. Tämä tehdään alla olevan komennon kautta.

npm publish

Kolmannen osapuolen pakettien hallinta npm:llä

Kuten olemme nähneet, "Node-pakettien hallinta" pystyy hallitsemaan moduuleja, joita Node.js-sovellukset vaativat.

Katsotaanpa joitain node-pakettien hallinnassa käytettävissä olevia toimintoja moduulien hallintaan

  1. Pakettien asennus globaalissa tilassa – Moduulit voidaan asentaa globaalilla tasolla, mikä tarkoittaa periaatteessa sitä, että nämä moduulit olisivat saatavilla kaikkiin Node.js-projekteihin paikallisella koneella. Alla oleva esimerkki näyttää kuinka "pikamoduuli" asennetaan globaalilla valinnalla.npm install express –global Yllä olevan lausunnon yleinen vaihtoehto mahdollistaa moduulien asennuksen globaalilla tasolla.
  2. Luettelo kaikista paikalliseen koneeseen asennetuista globaaleista paketeista. Tämä voidaan tehdä suorittamalla alla oleva komento komentokehotteessanpm lista – globaaliAlla on tulos, joka näytetään, jos olet aiemmin asentanut "express-moduulin" järjestelmääsi. Täällä voit nähdä paikalliseen koneeseen asennetut eri moduulit.

Kolmannen osapuolen pakettien hallinta NPM:llä

  1. Paketin tietyn version asentaminen – Joskus voi olla vaatimus asentaa vain paketin tietty versio. Kun tiedät paketin nimen ja asennettavan version, voit asentaa kyseisen version käyttämällä npm install -komentoa. Alla oleva esimerkki näyttää, kuinka asennetaan moduuli, jota kutsutaan alaviivaksi tietyn version 1.7.0npm install kanssa. alaviiva@1.7.0
  2. Pakettiversion päivittäminen – Joskus järjestelmässä voi olla paketin vanhempi versio, ja saatat haluta päivittää uusimpaan markkinoilla olevaan versioon. Voit tehdä tämän käyttämällä npm update -komentoa. Alla oleva esimerkki näyttää, kuinka alaviivapaketti päivitetään uusimpaan versioonnpm-päivityksen alaviiva
  3. Tietyn paketin etsiminen – Jos haluat etsiä, onko tietty versio saatavilla paikallisessa järjestelmässä, voit käyttää hakukomentoa npm. Alla oleva esimerkki tarkistaa, onko pikamoduuli asennettu paikalliseen koneeseen vai ei.npm haku express
  4. Paketin asennuksen poistaminen – Sama, johon voit asentaa paketin, voit myös poistaa paketin. Paketin asennuksen poisto tehdään npm:n asennuksen poistokomennolla. Alla oleva esimerkki näyttää kuinka pikamoduuli poistetaannpm uninstall express

Mikä on package.json-tiedosto

Package.json-tiedostoa käytetään pitämään metatiedot tietystä projektista. Nämä tiedot antavat Node-pakettien hallintaohjelmalle tarvittavat tiedot ymmärtääkseen, kuinka projektia ja sen riippuvuuksia tulee käsitellä.

Package.json-tiedostot sisältävät tietoja, kuten projektin kuvauksen, projektin version tietyssä jakelussa, lisenssitiedot ja määritystiedot.

Package.json-tiedosto sijaitsee tavallisesti Node.js-projektin juurihakemistossa.

Otetaan esimerkki siitä, miltä moduulin rakenne näyttää, kun se asennetaan npm:n kautta.

Alla oleva tilannekuva näyttää express-moduulin tiedoston sisällön, kun se sisältyy Node.js-projektiisi. Tilannekuvasta näet paketin.json-tiedoston express-kansiossa.

Package.json-tiedosto

Jos avaat package.json-tiedoston, näet tiedostossa paljon tietoa.

Alla on tilannekuva tiedoston osasta. The express@~4.13.1 mainitsee käytetyn pikamoduulin versionumeron.

Package.json-tiedosto

Yhteenveto

  • Node.js:n moduuli on koodin looginen kapselointi yhteen yksikköön. Moduuliin jakaminen tekee koodista hallittavamman ja ylläpidettävämmän tulevaisuutta varten
  • Markkinoilla on monia moduuleja, joita voidaan käyttää Node.js:ssä, kuten express, underscore, MongoDB, Jne
  • Node-pakettien hallintaa (npm) käytetään moduulien lataamiseen ja asentamiseen, joita voidaan sitten käyttää Node.js-sovelluksessa.
  • Voidaan luoda mukautettuja NPM-moduuleja, laajentaa näitä moduuleja ja myös julkaista näitä moduuleja.
  • Node-paketinhallinnassa on täydellinen joukko komentoja paikallisen järjestelmän npm-moduuleiden hallintaan, kuten asennus, asennuksen poistaminen, haku jne.
  • Package.json-tiedostoa käytetään npm-moduulin koko metatietotietojen säilyttämiseen.