نود جی اس چیست
بعد از این که مقالات جاوااسکریپت چیست و جی کوئری چیست رو در سایت منتشر کردیم خیلی از دوستان در مورد node.js پرسیدند و میخواستند بدونند نود جی اس چیست و چه کاربردی دارد. در این مقاله به صورت کامل جواب سوال نود جی اس چیست را خواهیم داد و در مورد کاربردهای آن بیشتر صحبت میکنیم.
نود جی اس چیست
نود جی اس یک پلتفرم کدنویسی سمت سرور است که بر پایه موتور جاوااسکریپت مرورگر گوگل کروم کدنویسی شده است. Node.js یک پلتفرم کد باز برای گسترش برنامههای سمت سرور و تحت شبکه میباشد. این پلتفرم بر اساس زبان جاوااسکریپت نوشته شده است و قابلیت پیادهسازی بر روی سیستمعاملهای ویندوز، لینوکس و سیستم عامل کامپیوترهای اپل را دارد.
نکته مهم: نود جی اس، نه زبان برنامه نویسی است نه فریم ورک بلکه یک پلتفرم می باشد.
اگر بخوام به صورت خودمونی بگم Node.JS چی هستش باید بگم Node.JS نه یک زبان برنامه نویسی هستش نه فری ورکه، نه ide بله یک برنامه (پلتفرم است) است که شما نصب می کنید و از طریق این برنامه با جاوااسکریپت می تونید سمت سرور کد نویسی کنید.
توجه: اگر میخواهید برنامه ای بنویسید که بصورت آنی یا realtime پاسخگو باشد حتما از Node.JS استفاده کنید.
هدف از به وجود آمدن Node.JS:
هدف این پلتفرم این است که سرعت اجرای برنامه تحت و یا شبکه رو بالا ببرد و فشار زیاد ناشی از بازدیدهای بالا رو از سرور کم کند. شما به راحتی می توانید از تکنولوژی ajax در این پلتفرم استفاده کنید و حتی پیشرفته تر از قابلیت های ajax آزادی عمل دارید.
چه شرکت هایی از نود جی اس استفاده میکنند:
- آیبیام
- مایکروسافت
- لینکدین
- پیپل
- نتفلیکس
- یاهو
- سیسکو
ویژگیهای Node.JS :
در زیر برخی از مهمترین ویژگیهای پلتفرم Node.JS ذکر شده است:
- غیرهمزمانی و رویداد محوری: همهی API های کتابخانه Node.js غیرهمزمان میباشند که همین امر باعث مسدودناپذیری (non-blocking) آن میشود. این بدان معناست که که Node.js در بستر سرور هیچگاه در انتظار بازگشت اطلاعات از API نمیماند. سرور پس از صدا زدن یک API به سمت API بعدی حرکت میکند و برای اطلاع از وضعیت API قبلی از مکانیزم ثبت رویداد استفاده میکند.
- سرعت بالا: با توجه به این که نود جی اس بر پایه نسخه ۸ موتور جاوا اسکریپت گوگل کروم پیادهسازی شده است در اجرای کدها بسیار سریع عمل میکند.
- تک موضوع اما بسیار مقیاس پذیر: نود جی اس از یک مدل تک موضوعی به همراه حلقه رویددادها استفاده میکند. مکانیزم رویداد باعث میشود که سرور به صورت مسدود نشونده پاسخها را ارسال کند و همین امر باعث میشود بر خلاف مکانیزمهای سنتی که سرور را محدود به چند درخواست برای پردازش درخواستها میکرد سرور بسیار مقیایسپذیر شود.
- نود جی اس از یک برنامه تک موضوعی استفاده میکند و همان برنامه میتواند سرویسی برای تعداد بسیار بیشتری از درخواست ها نسبت به مکانیزم های قدیمی سرور مثل HTTP سرور آپاچی فراهم کند.
- عدم وجود بافرینگ: این پلتفرم هیچ دادهای را بافر نمیکند و دادههای خروجی را به صورت تکهتکه منتشر میکند.
نمودار مهمترین بخشهای Node.js
سایت اصلی Node.js
اگر به دنبال سایت اصلی Node.js هستید میتوانید از طریق لینک زیر به سایت اصلی آن دسترسی داشته باشید.
دانلود Node.js
اگر میخواهید Node.js رو دانلود کنید میتوانید از لینک زیر آن را دانلود کنید
مستندات Node.js
خود سایت Node.js یک مستندات کامل در مورد این پلتفرم منتشر کرده، که میتوانید از طریق لینک زیر به این مستندات دسترسی داشته باشید.
شروعی بر کار با Node.js در ویندوز
اگر به فکر این هستید در ویندوز با Node.js کار کنید میتوانید از طریق لینک زیر اطلاعات مفیدی در این زمینه کسب کنید.
کلیک کنید: شروعی بر کار با Node.js در ویندوز
البته یک راهنمای مختصر دیگری برای شروع کار با Node.js در ویندوز وجود دارد که میتوانید از طریق لینک زیر به آن دسترسی داشته باشید.
کلیک کنید: راهنمای کار با Nod.js در ویندوز
نصب و راه اندازی Node.js :
نصب Node.js بسیار راحت است. اگر از Windows، Mac، Linux استفاده می کنید فایل نصب را از بخش دانلود Node.js دریافت و نصب کنید. البته روش دیگری نیز برای نصب نود وجود دارد و آن استفاده از NVM است (این روش برای کسانی تازه با نود آشنا شده اند توصیه نمی شود).
بعد از نصب Node.js چه کنیم؟
پس از نصب دستور node را در خط فرمان یا ترمینال خود وارد کنید تا به Node.js دسترسی داشته باشید. شما از دستور node می توانید به دو روش استفاده کنید. اولی، فراخوانی بدون آرگومان ها، این کار باعث می شود یک پوسته تعاملی (REPL) جایی که می توانید جاوا اسکرپت های خالص را اجرا کنید.
برای چه پروژه هایی از Node.js استفاده کنیم؟
در زیر برخی از موقعیتهایی که Node.js خودش را به عنوان یک پلتفرم کارا معرفی میکند آمده است:
- نرمافزارهای محدوده I/O (ورودی و خروجی)
- نرمافزارهای جریان دادهای (Data Streaing)
- دادههای نرمافزارهای بلادرنگ (Real-Time)
- برنامههای مبتنی بر JASON API
- برنامههای تک صفحهای
برای چه پروژه هایی از Node.js استفاده نکنیم؟
- استفاده از این پلتفرم در برنامههای متمرکز بر CPU توصیه نمیشود
یک نمونه از کد Node.JS که کلمه و سایت sourceiran.com را در خروجی نمایش می دهد:
var http = require('http'); http.createServer(function (request, response) { response.writeHead(200, {'Content-Type': 'text/plain'}); response.end('sourceiran.com\n'); }).listen(8000); console.log('Server running at http://127.0.0.1:8000/');
مخترع پلتفرم نود جی اس:
رایان دال مخترع پلتفرم نود جی است و متولد ایالت کالیفرینا آمریکا است. او دانشجو رشته ریاضی بود اما چون علاقه شدیدی به برنامه نویسی داشت رشته ریاضی رو کنار گذاشت و به سمت برنامه نویسی آمد. او ابتدا با زبان برنامه نویسی روبی و فریم ورک روبی آن ریلز برنامه نویسی میکرد. نود. جیاس در ابتدا در سال ۲۰۰۹ توسط رایان دال ارائه شد.
یکی از مزیت های Node.js ساختار ساده آن است طوری که حتی اگر برنامه نویس تازه کار هستید باز میتوایند برنامه های قدرتمندی با آن بنویسید. اگر با جاوااسکریپت آشنایی دارید و با آن برنامه نوشته اید خیلی سریع میتوانید با پلتفرم Node.js کار کنید.