Node.js-tutorial voor beginners: leer stap voor stap in 3 dagen
Inleiding tot Node.js
De moderne webapplicatie heeft in de loop der jaren echt een lange weg afgelegd met de introductie van veel populaire raamwerken zoals bootstrap, Angular JS, enz. Al deze raamwerken zijn gebaseerd op de populaire JavaScript kader.
Maar als het ging om het ontwikkelen van servergebaseerde applicaties, was er een soort leegte, en dit is waar Node.js in beeld kwam.
Node.js is ook gebaseerd op de JavaScriptframework, maar het wordt gebruikt voor het ontwikkelen van server-based applicaties. Tijdens het doornemen van de gehele tutorial, zullen we Node.js in detail bekijken en hoe we het kunnen gebruiken om server-based applicaties te ontwikkelen.
Node.js-syllabus
Node.js-basisprincipes voor beginners
👉 Lessop 1 | Download en installeer Node.js - Node.js en NPM downloaden en installeren op Windows |
👉 Lessop 2 | Node.js NPM-zelfstudie — Creëren, publiceren, uitbreiden en beheren |
👉 Lessop 3 | Maak een HTTP-webserver in Node.js - Tutorial met codevoorbeeld |
Node.js Geavanceerde dingen!
👉 Lessop 1 | Node.js Express FrameWork-zelfstudie - Leer in 10 minuten |
👉 Lessop 2 | Node.js MongoDB Tutorial - Een complete gids met voorbeelden |
👉 Lessop 3 | Node.js Promise-zelfstudie - Een complete gids voor de JavaScriptbeloften |
👉 Lessop 4 | Bluebird belooft zelfstudie - Een complete gids voor de Bluebird-beloften |
👉 Lessop 5 | Node.js Generators - Wat is, callbacks versus Node.js Generators |
👉 Lessop 6 | Node js Streams-zelfstudie — Filestream, Pijpen |
👉 Lessop 7 | Node.js-tutorial voor het testen van eenheden met Jasmine - Een complete gids |
👉 Lessop 8 | GraphQL-zelfstudie — Wat is GraphQL? Leer met voorbeeld |
Ken het verschil!
👉 Lessop 1 | GraphQL versus REST - Wat is het verschil? |
👉 Lessop 2 | Node.Js versus AngularJS - Ken het verschil |
👉 Lessop 3 | Node.js versus Python - Wat is het verschil? |
Node.js-interviewvragen en tutorial pdf
👉 Lessop 1 | Node.js-interviewvragen — Top 25 Node.js-interviewvragen en -antwoorden |
👉 Lessop 2 | Node.js-tutorial-pdf - Download Node.js-tutorial-pdf voor beginners |
Wat is Node.js?
Node.js is een open-source, platformonafhankelijke runtime-omgeving die wordt gebruikt voor de ontwikkeling van webapplicaties op de server. Node.js-applicaties zijn geschreven in JavaScript en kan op een groot aantal besturingssystemen worden uitgevoerd.
Node.js is gebaseerd op een gebeurtenisgestuurde architectuur en een niet-blokkerende Input/Output API die is ontworpen om de doorvoer en schaalbaarheid van een applicatie voor realtime webapplicaties te optimaliseren.
Gedurende een lange periode was het beschikbare raamwerk voor webontwikkeling allemaal gebaseerd op een staatloos model. Bij een staatloos model worden de gegevens die in de ene sessie zijn gegenereerd (zoals informatie over gebruikersinstellingen en gebeurtenissen die hebben plaatsgevonden) niet bewaard voor gebruik in de volgende sessie met die gebruiker.
Er moest veel werk worden verricht om de sessie-informatie tussen verzoeken voor een gebruiker te onderhouden. Maar met Node.js is er eindelijk een manier voor webapplicaties om realtime tweerichtingsverbindingen te hebben, waarbij zowel de client als de server communicatie kunnen initiëren, waardoor ze vrij gegevens kunnen uitwisselen.
Waarom Node.js gebruiken?
We zullen in de komende hoofdstukken kijken naar de werkelijke waarde van Node.js, maar wat maakt dit raamwerk zo beroemd. Door de jaren heen waren de meeste applicaties gebaseerd op een stateless request-response-framework. Bij dit soort toepassingen is het aan de ontwikkelaar om ervoor te zorgen dat de juiste code wordt ingevoerd om ervoor te zorgen dat de status van de websessie behouden blijft terwijl de gebruiker met het systeem werkt.
Maar met de Node.js-webapplicaties kunt u nu in realtime werken en tweerichtingscommunicatie hebben. De status blijft behouden en de client of server kan de communicatie starten.
Kenmerken van Node.js
Laten we eens kijken naar enkele van de belangrijkste kenmerken van Node.js
- Asynchrone event-driven IO helpt gelijktijdige verwerking van verzoeken – Dit is waarschijnlijk het belangrijkste verkoopargument van Node.js. Deze functie betekent in principe dat als Node een verzoek ontvangt voor een Input/Output-bewerking, het de bewerking op de achtergrond uitvoert en doorgaat met het verwerken van andere verzoeken.
Dit is heel anders dan andere programmeertalen. Een eenvoudig voorbeeld hiervan wordt gegeven in de onderstaande code
var fs = require('fs'); fs.readFile("Sample.txt",function(error,data) { console.log("Reading Data completed"); });
- In het bovenstaande codefragment wordt gekeken naar het lezen van een bestand met de naam Sample.txt. In andere programmeertalen zou de volgende verwerkingsregel pas plaatsvinden nadat het volledige bestand is gelezen.
- Maar in het geval van Node.js is het belangrijkste deel van de code dat moet worden opgemerkt de declaratie van de functie ('function(error,data)'). Dit staat bekend als een callback-functie.
- Wat hier gebeurt is dat de bestandsleesbewerking op de achtergrond start. En andere verwerkingen kunnen gelijktijdig plaatsvinden terwijl het bestand wordt gelezen. Zodra de bestandsleesbewerking is voltooid, wordt deze anonieme functie aangeroepen en wordt de tekst "Reading Data completed" naar het consolelogboek geschreven.
- Knooppunt gebruikt de V8 JavaScript Runtime engine, degene die wordt gebruikt door Google Chrome. Knooppunt heeft een wrapper over de JavaScript engine waardoor de runtime engine veel sneller wordt en de verwerking van aanvragen binnen Node dus ook sneller.
- Afhandeling van gelijktijdige verzoeken – Een andere belangrijke functionaliteit van Node is de mogelijkheid om gelijktijdige verbindingen af te handelen met een zeer minimale overhead voor één enkel proces.
- De Node.js-bibliotheek gebruikt JavaScript – Dit is een ander belangrijk aspect van ontwikkeling in Node.js. Een groot deel van de ontwikkelgemeenschap is al goed thuis in javascript, en daarom wordt ontwikkeling in Node.js makkelijker voor een ontwikkelaar die javascript kent.
- Er is een actieve en levendige community voor het Node.js-framework. Vanwege de actieve community worden er altijd belangrijke updates voor het framework beschikbaar gesteld. Dit helpt om het framework altijd up-to-date te houden met de laatste trends in webontwikkeling.
Wie gebruikt Node.js?
Node.js wordt door veel grote bedrijven gebruikt. Hieronder vindt u een lijst met een paar ervan.
- Paypal – Veel sites binnen Paypal zijn ook begonnen met de transitie naar Node.js.
- LinkedIn – LinkedIn gebruikt Node.js om hun Mobile Servers, die de iPhone van stroom voorzien, Androiden mobiele webproducten.
- Mozilla heeft Node.js geïmplementeerd ter ondersteuning van browser-API's, die al een half miljard keer zijn geïnstalleerd.
- eBay host hun HTTP API-service in Node.js
Wanneer Node.js gebruiken?
Node.js is het beste voor gebruik in streaming of op gebeurtenissen gebaseerde realtime toepassingen zoals
- Chat-applicaties
- Gameservers – Snelle en krachtige servers die duizenden verzoeken tegelijk moeten verwerken, dan is dit een ideaal raamwerk.
- Goed voor samenwerkingsomgevingen – Dit is goed voor omgevingen waarin documenten worden beheerd. In een documentbeheeromgeving zijn er meerdere mensen die hun documenten posten en voortdurend wijzigingen aanbrengen door documenten uit en in te checken. Node.js is dus goed voor deze omgevingen, omdat de gebeurtenislus in Node.js kan worden geactiveerd wanneer documenten worden gewijzigd in een documentbeheerde omgeving.
- Advertentieservers – Ook hier kunt u duizenden verzoeken krijgen om advertenties van de centrale server te halen en Node.js kan een ideaal raamwerk zijn om dit af te handelen.
- Streamingservers – Een ander ideaal scenario om Node te gebruiken is voor multimediastreamingservers waarbij clients verzoeken hebben om verschillende multimedia-inhoud van deze server te halen.
Node.js is goed als je een hoog niveau van gelijktijdigheid nodig hebt, maar minder specifieke CPU-tijd.
Het beste van alles is dat Node.js, omdat het op javascript is gebouwd, het meest geschikt is wanneer u client-side applicaties bouwt die op hetzelfde javascript-framework zijn gebaseerd.
Wanneer moet u Node.js niet gebruiken?
Node.js kan voor veel toepassingen met verschillende doeleinden worden gebruikt. Het enige scenario waarin het niet mag worden gebruikt, is wanneer er lange verwerkingstijden zijn, wat vereist is door de toepassing.
Het knooppunt is zo gestructureerd dat het single-threaded is. Als een applicatie op de achtergrond een aantal langlopende berekeningen moet uitvoeren, kan deze geen andere verzoeken verwerken. Zoals hierboven besproken, wordt Node.js het beste gebruikt waar de verwerking minder speciale CPU-tijd nodig heeft.