-
بخش 1
-
بخش 2
-
بخش 3
مقدمه
Node.js چیست؟
Node.js یک بستر سمت سرور است که بر روی موتور جاوا اسکریپت Google Chrome (موتور V8) ساخته شده است. Node.js توسط Ryan Dahl در سال 2009 ساخته شده و آخرین نسخه آن v0.10.36 است. تعریف Node.js طبق اسناد رسمی آن به شرح زیر است –
Node.js پلتفرمی است که بر روی زمان اجرا JavaScript Chrome برای ساخت آسان برنامه های شبکه سریع و مقیاس پذیر ساخته شده است. Node.js از یک مدل ورودی و خروجی غیر مسدود کننده مبتنی بر رویداد استفاده می کند که آن را سبک و کارآمد می کند ، برای برنامه های کاربردی در زمان واقعی که در دستگاه های توزیع شده اجرا می شوند ، بسیار مناسب است.
Node.js یک محیط زمان اجرا برای ایجاد توسعه برنامه های سمت سرور و شبکه ، منبع باز و کراس پلت فرم است. برنامه های Node.js با JavaScript نوشته شده اند و می توانند در زمان اجرا Node.js در OS X ، Microsoft Windows و Linux اجرا شوند.
Node.js همچنین یک کتابخانه غنی از ماژول های مختلف JavaScript را فراهم می کند که توسعه برنامه های وب را با استفاده از Node.js تا حد زیادی ساده می کند.
Node.js = Runtime Environment + JavaScript Library
ویژگی های Node.js
در زیر برخی از ویژگیهای مهم Node.js به اولین انتخاب معماران نرم افزار تبدیل شده است.
- Asynchronous و Event Driven – تمام API های کتابخانه Node.js ناهمزمان هستند ، یعنی غیر مسدود کننده هستند. در اصل به این معنی است که یک سرور مبتنی بر Node.js هرگز منتظر یک API برای بازگشت داده نیست. سرور پس از فراخوانی آن به API بعدی منتقل می شود و سازوکار اطلاع رسانی Events of Node.js به سرور کمک می کند تا از تماس قبلی API پاسخی دریافت کند.
- بسیار سریع – که بر روی V8 JavaScript Engine Google Chrome ساخته شده است ، کتابخانه Node.js در اجرای کد بسیار سریع است.
- تک رشته ای اما بسیار مقیاس پذیر – Node.js از یک مدل تک رشته ای با حلقه رویداد استفاده می کند. مکانیسم رویداد به سرور کمک می کند تا به روشی غیر مسدود کننده پاسخ دهد و سرور را بسیار مقیاس پذیر می کند در مقابل سرورهای سنتی که رشته های محدودی برای رسیدگی به درخواست ها ایجاد می کنند. Node.js از یک برنامه تک رشته ای استفاده می کند و همین برنامه می تواند تعداد درخواستهای بسیار بیشتری نسبت به سرورهای سنتی مانند Apache HTTP Server را ارائه دهد.
- بدون بافر – برنامه های Node.js هرگز داده ای را بافر نمی کنند. این برنامه ها به سادگی داده ها را به صورت قطعه ای خارج می کنند.
- مجوز – Node.js تحت مجوز MIT منتشر می شود.
چه کسی از Node.js استفاده می کند؟
در زیر پیوند موجود در ویکی github حاوی یک لیست جامع از پروژه ها ، برنامه ها و شرکت هایی است که از Node.js استفاده می کنند. این لیست شامل eBay ، General Electric ، GoDaddy ، Microsoft ، PayPal ، Uber ، Wikipins ، Yahoo! و Yammer است که به چند مورد اشاره می کند.
مفاهیم
نمودار زیر برخی از بخشهای مهم Node.js را به تصویر می کشد که در فصل های بعدی به طور مفصل در مورد آنها بحث خواهیم کرد.
از Node.js کجا استفاده کنیم؟
در زیر مناطقی آورده شده است که Node.js خود را به عنوان یک شریک فناوری کامل اثبات می کند.
- برنامه های ورودی I / O
- برنامه های جریان داده
- برنامه های کاربردی در زمان واقعی فشرده (DIRT)
- برنامه های مبتنی بر API های JSON
- برنامه های تک صفحه
کجا Node.js استفاده نشود؟
استفاده از Node.js برای برنامه های فشرده پردازنده توصیه نمی شود.