Node.js õpetus algajatele: õppige samm-sammult 3 päevaga

Sissejuhatus Node.js-i

Kaasaegne veebirakendus on aastate jooksul tõesti kaugele jõudnud, kuna on kasutusele võetud paljud populaarsed raamistikud, nagu bootstrap, Angular JS jne. Kõik need raamistikud põhinevad populaarsetel JavaScript raamistik.

Kui aga rääkida serveripõhiste rakenduste arendamisest, tekkis mingi tühjus ja siin tuli pildile Node.js.

Node.js põhineb ka JavaSkriptiraamistik, kuid seda kasutatakse serveripõhiste rakenduste arendamiseks. Kogu õpetuse läbimisel uurime üksikasjalikult Node.js-i ja seda, kuidas saaksime seda serveripõhiste rakenduste arendamiseks kasutada.

Node.js ainekava

Node.js-i põhitõed algajatele

👉 Lessaasta 1 Laadige alla ja installige Node.js — Kuidas alla laadida ja installida Node.js ja NPM aknas
👉 Lessaasta 2 Node.js NPM-i õpetus — Loo, avalda, laienda ja halda
👉 Lessaasta 3 Looge HTTP-veebiserver rakenduses Node.js — Õpetus koos koodinäidisega

Node.js Advance Stuff!

👉 Lessaasta 1 Node.js Express FrameWorki õpetus — Õppige 10 minutiga
👉 Lessaasta 2 Node.js MongoDB juhendaja — täielik juhend koos näidetega
👉 Lessaasta 3 Node.js lubaduse õpetus — Täielik juhend JavaSkripti lubadused
👉 Lessaasta 4 Bluebird Promises Tutorial — Sinilinnu lubaduste täielik juhend
👉 Lessaasta 5 Node.js Generators — Mis on, tagasihelistamised vs. Node.js Generators
👉 Lessaasta 6 Node js Streamsi õpetus - failivoog, torud
👉 Lessaasta 7 Node.js üksuse testimise õpetus koos Jasmine'iga — Täielik juhend
👉 Lessaasta 8 GraphQL õpetus — Mis on GraphQL? Õppige näitega

Tea erinevust!

👉 Lessaasta 1 GraphQL vs REST — Mis vahet sellel on?
👉 Lessaasta 2 Node.Js vs AngularJS — Tea erinevust
👉 Lessaasta 3 Node.js vs Python — Mis vahet sellel on?

Node.js intervjuu küsimused ja õpetus PDF

👉 Lessaasta 1 Node.js intervjuu küsimused — 25 populaarseimat Node.js-i intervjuuküsimust ja vastust
👉 Lessaasta 2 Node.js juhendaja PDF — Laadige alla Node.js õpetuse PDF algajatele

Mis on Node.js?

Node.js on avatud lähtekoodiga platvormideülene käituskeskkond, mida kasutatakse serveripoolsete veebirakenduste arendamiseks. Node.js rakendused on sisse kirjutatud JavaSkript ja seda saab käivitada paljudes operatsioonisüsteemides.

Node.js põhineb sündmustepõhisel arhitektuuril ja mitteblokeerival sisendi/väljundi API-l, mis on loodud rakenduse läbilaskevõime ja skaleeritavuse optimeerimiseks reaalajas veebirakenduste jaoks.

Pika aja jooksul põhinesid veebiarenduseks saadaolevad raamistikud kodakondsuseta mudelil. Olekuta mudel on see, kus ühe seansi jooksul loodud andmeid (nt teavet kasutaja seadete ja toimunud sündmuste kohta) ei säilitata järgmise seansi jooksul selle kasutajaga kasutamiseks.

Seansi teabe säilitamiseks kasutaja päringute vahel tuli teha palju tööd. Kuid Node.js-iga on lõpuks ometi võimalus veebirakendustel luua reaalajas kahesuunalised ühendused, kus nii klient kui ka server saavad sidet algatada, võimaldades neil vabalt andmeid vahetada.

Miks kasutada Node.js?

Järgmistes peatükkides käsitleme Node.js-i tegelikku väärtust, kuid mis teeb selle raamistiku nii kuulsaks. Aastate jooksul põhines enamik rakendusi kodakondsuseta päringu-vastuse raamistikul. Seda tüüpi rakenduste puhul peab arendaja tagama õige koodi sisestamise, et tagada veebiseansi oleku säilitamine ajal, mil kasutaja süsteemiga töötab.

Kuid Node.js veebirakendustega saate nüüd töötada reaalajas ja suhelda kahesuunaliselt. Olek säilib ja sidet saab alustada kas klient või server.

Node.js funktsioonid

Vaatame mõningaid Node.js-i põhifunktsioone

  1. Asünkroonne sündmustepõhine IO aitab taotluste samaaegset käsitlemist – see on tõenäoliselt Node.js-i kõige olulisem müügiargument. See funktsioon tähendab põhimõtteliselt seda, et kui sõlm saab mõne sisend-/väljundtoimingu päringu, teostab see toimingu taustal ja jätkab teiste päringute töötlemist.
    See erineb oluliselt teistest programmeerimiskeeltest. Selle lihtne näide on toodud allolevas koodis
var fs = require('fs'); 
          fs.readFile("Sample.txt",function(error,data)
          {
                console.log("Reading Data completed");
     });
  • Ülaltoodud koodilõik vaatleb faili nimega Sample.txt lugemist. Teistes programmeerimiskeeltes toimub järgmine töötlemisrida alles siis, kui kogu fail on läbi loetud.
  • Kuid Node.js-i puhul on oluline koodiosa, mida tuleb märgata, funktsiooni deklaratsioon ('function(error,data)'). Seda nimetatakse tagasihelistamisfunktsiooniks.
  • Siin juhtub see, et faili lugemise toiming algab taustal. Ja faili lugemise ajal võib samaaegselt toimuda ka muu töötlemine. Kui faili lugemise toiming on lõpule viidud, kutsutakse see anonüümne funktsioon välja ja konsooli logisse kirjutatakse tekst "Andmete lugemine lõpetatud".
  1. Node kasutab V8 JavaSkripti käitusaegne mootor, mida kasutab Google Chrome. Sõlme kohal on ümbris JavaSkriptimootor, mis muudab käitusaja mootori palju kiiremaks ja seega muutub ka päringute töötlemine sõlmes kiiremaks.
  2. Samaaegsete päringute käsitlemine – Node'i teine ​​põhifunktsioon on võime käsitleda samaaegseid ühendusi väga minimaalse lisakuluga ühes protsessis.
  3. Teek Node.js kasutab JavaSkript – see on Node.js-i arenduse teine ​​oluline aspekt. Suurem osa arenduskogukonnast on JavaScripti juba hästi kursis ja seetõttu muutub JavaScripti tundva arendaja jaoks Node.js-i arendamine lihtsamaks.
  4. Node.js raamistiku jaoks on aktiivne ja elav kogukond. Aktiivse kogukonna tõttu on raamistikule alati saadaval võtmevärskendused. See aitab hoida raamistikku veebiarenduse uusimate trendidega alati kursis.

Kes kasutab Node.js-i

Node.js-i kasutavad paljud suured ettevõtted. Allpool on loetelu mõnest neist.

  • Paypal – paljud Paypali saidid on samuti alustanud üleminekut Node.js-ile.
  • LinkedIn – LinkedIn kasutab oma toiteks Node.js-i mobiilne Serverid, mis toidavad iPhone'i, Androidja mobiilse veebi tooted.
  • Mozilla on juurutanud Node.js'i, et toetada brauseri API-sid, millel on pool miljardit installi.
  • eBay hostib nende HTTP API teenust Node.js-s

Millal kasutada Node.js-i?

Node.js sobib kõige paremini kasutamiseks voogesituse või sündmusepõhiste reaalajas rakendustes, nagu

  1. Vestlusrakendused
  2. Mänguserverid – kiired ja suure jõudlusega serverid, mis peavad korraga töötlema tuhandeid päringuid, siis on see ideaalne raamistik.
  3. Hea koostöökeskkond – see on hea dokumente haldavate keskkondade jaoks. Dokumendihalduskeskkonnas on teil mitu inimest, kes postitavad oma dokumente ja teevad dokumente välja ja registreerides pidevalt muudatusi. Nii et Node.js on nende keskkondade jaoks hea, kuna Node.js-i sündmuste tsüklit saab käivitada alati, kui dokumente muudetakse dokumendihaldatud keskkonnas.
  4. Reklaamiserverid – siingi võib teil olla tuhandeid taotlusi reklaamide tõmbamiseks keskserverist ja Node.js võib olla ideaalne raamistik selle käsitlemiseks.
  5. Voogeserverid – Teine ideaalne stsenaarium Node'i kasutamiseks on multimeediumi voogesituse serverite jaoks, kus klientidel on taotlus tõmmata sellest serverist erinevat multimeediumisisu.

Node.js on hea, kui vajate kõrget samaaegsust, kuid vähem eraldatud protsessoriaega.

Mis kõige parem, kuna Node.js on üles ehitatud JavaScriptile, sobib see kõige paremini kliendipoolsete rakenduste loomiseks, mis põhinevad samal JavaScripti raamistikul.

Millal Node.js'i mitte kasutada?

Node.js-i saab kasutada paljude erinevate rakenduste jaoks. Ainus stsenaarium, mille puhul seda ei tohiks kasutada, on pikk töötlemisaeg, mida rakendus nõuab.

Sõlm on üles ehitatud ühe keermega. Kui rakendus peab taustal tegema mõnda pikaajalist arvutust, ei saa see muid taotlusi töödelda. Nagu eespool mainitud, kasutatakse Node.js-i kõige paremini seal, kus töötlemine vajab vähem CPU aega.