Node.js Kya Hai




Node.js Chromes V8 JavaScript Engine पर निर्मित एक Open Source Server Side Runtime Rnvironment है. Node.js JavaScript का उपयोग करके अत्यधिक Scalable Server Side Application बनाने के लिए एक Event Driven, Non-blocking Input Output और Cross-platform Runtime Environment प्रदान करता है.

Node.js का उपयोग विभिन्न प्रकार के Applications जैसे कि Command Line Application, Web Application, Real Time Chat Application, REST API Server इत्यादि बनाने के लिए किया जाता है .

Node.js REPL Terminal

REPL Read Eval Print Loop के लिए खड़ा है और यह एक Computer Console या Unix/Linux Shell जैसे Computer Environment को Represent करता है जहां एक Command को दर्ज किया जाता है और System एक Interactive Mode में Output के साथ प्रतिक्रिया देता है.

Node.js Module

Node.js मे Module एक साधारण या Complex Performance है जो एक या एक से अधिक Javascript Files मे Organized है जिसे पूरे Node.js Application मे उपयोग किया जा सकता है.

Node.js में प्रत्येक Module का अपना Context होता है इसलिए यह अन्य Module मे हस्तक्षेप नहीं कर सकता है या Global Scope को Pollute नहीं कर सकता है साथ ही प्रत्येक Module को एक अलग फ़ोल्डर के तहत एक अलग .js File में रखा जा सकता है.

Node.js CommonJS modules standard लागू करता है. CommonJS Volunteers का एक समूह होता है जो Web Server Desktop और Console Application के लिए Javascript Standards को परिभाषित करता है.

Node.js Web Server

किसी भी Web Application के Web Pages तक पहुंचने के लिए आपको एक Web Server की आवश्यकता होती है. Web Server Web Application के लिए सभी HTTPS Requests को Handle करता है उदाहरण के लिए IIS ASP.NET Web Applications के लिए एक Web Server है और Apache PHP या Java Web Applications के लिए एक Web Server होता है.

Node.js File System

File Server के रूप मे Node.js File System Module आपको अपने कंप्यूटर पर फ़ाइल सिस्टम के साथ काम करने की अनुमति देता है. File System Module को शामिल करने के लिए, Require() Method का उपयोग करता है. File System निम्न प्रकार के Module का उपयोग करता है Read Files, Create Files, Update Files, Delete files,Rename files.

Node.js Debugging

आप विभिन्न Tools का उपयोग करके Node.js Application को Debug कर सकते है. जैसे की Core Node.js Debugger, Node Inspector, Built-in Debugger IDEs इत्यादि . Node.js Built-in Non-graphic Debugging Tool प्रदान करता है जिसका उपयोग सभी Platforms पर किया जा सकता है. यह Node.js Application को Debug करने के लिए विभिन्न Commands प्रदान करता है.

Node.js Frameworks

Node.js Web Server अनुभाग मे Node.js का उपयोग करके Web Application बनाने के लिए बहुत कम स्तर का कोड लिखना होता है. Node Package Manager मे उपलब्ध कई Third Party Open Source Frameworks होते है जो Node.js Application Development को तेज़ी से और आसान बनाता है। आप अपनी Application Requirements के अनुसार एक Appropriate Framework को चुन सकते है.

Node.js Data Access

Node.js सभी प्रकार के Databases का समर्थन करता है इससे कोई फर्क नहीं पड़ता कि यह एक Relational Database या NoSQL Database है. हालांकि MongoDb जैसे NoSQL Databases Node.js के साथ सबसे अच्छे Fit होता है. Node.js से Databases तक पहुंचने के लिए आपको पहले उस Databases के लिए Drivers को install करने की आवश्यकता होती है जिसका आप उपयोग करना चाहते हो.

Node.js Global Objects

Node.js Global Objects Nature मे सभी Modules मे उपलब्ध होते है. हम इन Objects को हमारे Application मे शामिल करने की आवश्यकता नही होती है बल्कि हम उन्हें सीधे उपयोग कर सकते है.

Node.js Callbacks

Callbacks एक Function के लिए एक Asynchronous Equivalent है. इसे प्रत्येक कार्य के पूरा होने पर Call किया जाता है. Node.js में आमतौर पर Callbacks Function का उपयोग किया जाता है. Node के सभी APIs Callbacks का समर्थन करने के लिए एक तरीके से लिखे गए है.

उदाहरण के लिए जब कोई Function File को Read करना शुरू करता है तो यह तुरंत Execution environment पर Control देता है ताकि अगला Instructions को Execute किया जा सके. Node.js में एक बार File I / O पूर्ण हो जाने पर यह Callback Function को Call करता है.

इसलिए File I / O के लिए कोई Blocking या Wait नही होता है. यह Node.js को अत्यधिक Scalable बनाता है क्योंकि यह किसी भी Function को Result Return के इंतजार किए बिना उच्च संख्या मे Request को Processed कर सकता है.

Node.js Events

Node.js Applications मे Events और Callbacks Concepts का उपयोग Concurrency प्रदान करने के लिए किया जाता है. Node.js Applications Single Threaded है और Node js के प्रत्येक API Asynchronous है. तो यह Concurrency बनाए रखने के लिए Async Function का उपयोग करता है.

Node Observer Pattern का उपयोग करता है Node Thread एक Event Loop रखता है और किसी भी कार्य को पूरा करने के बाद यह इसी Events को सक्रिय करता है जो Event Listener Function को Execute करने के लिए संकेत देता है.