Node.js Handledning för nybörjare: Lär dig steg för steg på 3 dagar

Introduktion till Node.js

Den moderna webbapplikationen har verkligen kommit långt genom åren med introduktionen av många populära ramverk som bootstrap, Angular JS etc. Alla dessa ramverk är baserade på de populära ramverken JavaScript ramverk.

Men när det kom till att utveckla serverbaserade applikationer fanns det ett slags tomrum, och det var här Node.js kom in i bilden.

Node.js är också baserad på JavaSkriptramverk, men det används för att utveckla serverbaserade applikationer. När vi går igenom hela handledningen kommer vi att undersöka Node.js i detalj och hur vi kan använda den för att utveckla serverbaserade applikationer.

Node.js kursplan

Node.js Grunderna för nybörjare

👉 Lesspå 1 Ladda ner och installera Node.js — Hur man laddar ner och installerar Node.js och NPM på Windows
👉 Lesspå 2 Node.js NPM handledning — Skapa, publicera, utöka och hantera
👉 Lesspå 3 Skapa HTTP-webbserver i Node.js — Handledning med kodexempel

Node.js Advance Stuff!

👉 Lesspå 1 Node.js Express FrameWork Tutorial — Lär dig på 10 minuter
👉 Lesspå 2 node.js MongoDB Handledning — En komplett guide med exempel
👉 Lesspå 3 Node.js Promise Handledning — En komplett guide till JavaManus löften
👉 Lesspå 4 Handledning för Bluebird Promises — En komplett guide till Bluebird Promises
👉 Lesspå 5 node.js Generators — Vad är, Callbacks vs Node.js Generators
👉 Lesspå 6 Handledning för Node js Streams — Filström, Pipes
👉 Lesspå 7 Node.js Unit Testing Tutorial med Jasmine — En komplett guide
👉 Lesspå 8 Handledning för GraphQL — Vad är GraphQL? Lär dig med exempel

Vet skillnaden!

👉 Lesspå 1 GraphQL vs REST - Vad är skillnaden?
👉 Lesspå 2 Node.Js vs AngularJS – Vet skillnaden
👉 Lesspå 3 Node.js vs Python - Vad är skillnaden?

Node.js intervjufrågor och handledning PDF

👉 Lesspå 1 Node.js intervjufrågor — Topp 25 Node.js-intervjufrågor och svar
👉 Lesspå 2 Node.js handledning PDF — Ladda ner Node.js Tutorial PDF för nybörjare

Vad är Node.js?

Node.js är en öppen källkod, plattformsoberoende runtime-miljö som används för utveckling av webbapplikationer på serversidan. Node.js-applikationer skrivs in JavaScript och kan köras på en mängd olika operativsystem.

Node.js är baserat på en händelsedriven arkitektur och ett icke-blockerande Input/Output API som är designat för att optimera en applikations genomströmning och skalbarhet för webbapplikationer i realtid.

Under en lång tidsperiod var det ramverk som var tillgängligt för webbutveckling baserad på en statslös modell. En tillståndslös modell är där data som genereras i en session (som information om användarinställningar och händelser som inträffade) inte underhålls för användning i nästa session med den användaren.

Mycket arbete behövde göras för att upprätthålla sessionsinformationen mellan förfrågningar för en användare. Men med Node.js finns det äntligen ett sätt för webbapplikationer att ha tvåvägsanslutningar i realtid, där både klienten och servern kan initiera kommunikation, vilket gör att de kan utbyta data fritt.

Varför använda Node.js?

Vi kommer att ta en titt på det verkliga värdet av Node.js i de kommande kapitlen, men vad är det som gör detta ramverk så känt. Under årens lopp baserades de flesta ansökningarna på ett statslöst ramverk för begäran och svar. I den här typen av applikationer är det upp till utvecklaren att se till att rätt kod infördes för att säkerställa att webbsessionens tillstånd bibehölls medan användaren arbetade med systemet.

Men med Node.js webbapplikationer kan du nu arbeta i realtid och ha en tvåvägskommunikation. Tillståndet bibehålls och antingen klienten eller servern kan starta kommunikationen.

Funktioner i Node.js

Låt oss titta på några av nyckelfunktionerna i Node.js

  1. Asynkron händelsedriven IO hjälper till att hantera förfrågningar samtidigt – Detta är förmodligen det viktigaste försäljningsargumentet för Node.js. Den här funktionen betyder i grunden att om en begäran tas emot av Node för någon Input/Output-operation, kommer den att utföra operationen i bakgrunden och fortsätta med att bearbeta andra förfrågningar.
    Detta skiljer sig ganska mycket från andra programmeringsspråk. Ett enkelt exempel på detta ges i koden nedan
var fs = require('fs'); 
          fs.readFile("Sample.txt",function(error,data)
          {
                console.log("Reading Data completed");
     });
  • Ovanstående kodavsnitt tittar på att läsa en fil som heter Sample.txt. I andra programmeringsspråk skulle nästa rad av bearbetning bara ske när hela filen är läst.
  • Men i fallet med Node.js är den viktiga del av koden att lägga märke till deklarationen av funktionen ('funktion(fel,data)'). Detta är känt som en återuppringningsfunktion.
  • Så vad som händer här är att filläsningsoperationen startar i bakgrunden. Och annan bearbetning kan ske samtidigt medan filen läses. När filläsoperationen är klar kommer denna anonyma funktion att anropas och texten "Reading Data completed" kommer att skrivas till konsolloggen.
  1. Node använder V8 JavaScript Runtime-motor, den som används av Google Chrome. Node har ett omslag över JavaSkriptmotor som gör runtime-motorn mycket snabbare och därför blir behandlingen av förfrågningar inom Node också snabbare.
  2. Hantering av samtidiga förfrågningar – En annan nyckelfunktion hos Node är förmågan att hantera samtidiga anslutningar med en mycket minimal overhead på en enda process.
  3. Node.js-biblioteket använder JavaSkript – Detta är en annan viktig aspekt av utvecklingen i Node.js. En stor del av utvecklingsgemenskapen är redan väl insatt i javascript, och därför blir utveckling i Node.js lättare för en utvecklare som kan javascript.
  4. Det finns en aktiv och levande gemenskap för Node.js-ramverket. På grund av den aktiva communityn finns det alltid nycklaruppdateringar tillgängliga för ramverket. Detta hjälper till att hålla ramverket alltid uppdaterat med de senaste trenderna inom webbutveckling.

Vem använder Node.js

Node.js används av många stora företag. Nedan följer en lista över några av dem.

  • Paypal – Många sajter inom Paypal har också påbörjat övergången till Node.js.
  • LinkedIn – LinkedIn använder Node.js för att driva sina Mobil Servrar, som driver iPhone, Androidoch mobilwebbprodukter.
  • Mozilla har implementerat Node.js för att stödja webbläsar-API:er som har en halv miljard installationer.
  • eBay är värd för deras HTTP API-tjänst i Node.js

När ska du använda Node.js

Node.js är bäst för användning i streaming eller händelsebaserade realtidsapplikationer som

  1. Chattapplikationer
  2. Spelservrar – Snabba och högpresterande servrar som behöver behandla tusentals förfrågningar åt gången, då är detta ett idealiskt ramverk.
  3. Bra för samarbetsmiljö – Detta är bra för miljöer som hanterar dokument. I en dokumenthanteringsmiljö kommer du att ha flera personer som lägger upp sina dokument och gör ständiga ändringar genom att checka ut och checka in dokument. Så Node.js är bra för dessa miljöer eftersom händelseslingan i Node.js kan triggas när dokument ändras i en dokumenthanterad miljö.
  4. Annonsservrar – Återigen här kan du ha tusentals förfrågningar om att hämta annonser från den centrala servern och Node.js kan vara ett idealiskt ramverk för att hantera detta.
  5. Strömningsservrar – Ett annat idealiskt scenario att använda Node är för multimediaströmningsservrar där klienter har förfrågningar om att hämta olika multimediainnehåll från denna server.

Node.js är bra när du behöver höga nivåer av samtidighet men mindre mängd dedikerad CPU-tid.

Bäst av allt, eftersom Node.js är byggt på javascript, är det bäst lämpat när du bygger applikationer på klientsidan som är baserade på samma javascript-ramverk.

När ska du inte använda Node.js

Node.js kan användas för många applikationer med olika syften. Det enda scenariot där det inte ska användas är där det finns långa handläggningstider, vilket krävs av applikationen.

Noden är strukturerad för att vara entrådig. Om en applikation krävs för att utföra några långa beräkningar i bakgrunden, kommer den inte att kunna behandla några andra förfrågningar. Som diskuterats ovan används Node.js bäst där bearbetning kräver mindre dedikerad CPU-tid.

Dagligt Guru99-nyhetsbrev

Kickstarta dagen med de senaste och viktigaste AI-nyheterna som levereras just nu.