Node.js چیست؟

وقتی که میگـیــم بوتکمپ برنامهنویسی جاوا، پایتــون یا php داریم دیگه نیازی به توضیح اضافه دربارۀ عنوان نیست. اما وقتی میگیم بوتکمپ بعدیِ مکتب Node.Js هست، ممکنه کلی سؤال توی ذهن افرادی که کمتر با فضای برنامهنویسی آشنایی دارن پیش بیاد، که بعضیهاش رو به زبون میارن.
Node.Js چیه؟ زبان برنامهنویسیه؟ بکانده یا فرانتاند؟ با هاش چه کارهایی میشه کرد؟ و …
چند دقیقه ای با ما همراه باشین تا یک مقدار باهاش آشنا بشیم.
Node.js تکنولوژیِ مرتبط با زبان JS
در مطالب قبلی زبان JS یا همون جاوا اسکریپت رو معرفی کردیم. واضحه که عبارت Node.js از ترکیب Node به اضافه JS ساخته شده . پس اگر جاوا اسکریپت رو بشناسیم نصف راه رو رفتیم و میدونیم که احتمالاً قراره از یک تکنولوژی مرتبط با اون صحبت کنیم.
Ryan Dahl
قبلاً گفتیم از سال 1995 که جاوا اسکریپت به وجود اومد با کلی کتابخانه و فریمورک که هر روز براش عرضه میشد در موضوعات زیادی مورد استفاده قرار گرفت. اما بیشتر این کاربردها مربوط به بخش فرانتاند(سمت کاربر) بود. تا اینکه در سال 2009، Node.JS توسط رایان دال نوشته شد.
کتابخانه یا فریموورک js ؟
در واقع Node.JS کتابخانه یا فریمورکِ JS نیست و چیزی فراتر از فریمورکه. در معرفی اون از عبارت هایی مثل پلتفرم یا به طور دقیق تر runtime environment استفاده میشه. یعنی: فضا یا محیطی که برای اجرای کد هاست.
تخصص این پلتفرم برنامهنویسی بکانده(سمت سرور ) و تا الان هزاران کتابخانۀ به دردبخور و کاربردی روی اون ایجاد شده که بهش قابلیتهای جذابی میده.
چه کارهایی رو میشه با node.js انجام داد؟
- ساختSPA (برنامههایی که تمام بخشها در یک صفحه اجرا میشن) مثل:
- شبکههای اجتماعی
- سرویسهای ایمیل
- سرویسهای اشتراک ویدئو و …
- ساخت برنامههایی که در لحظه امکان تغییر دارند(RTA) مثل:
- ابزار های تعاملی، برنامههای مدیریت پروژه، ابزارهای کنفرانس ویدئوی یا صوتی و ..
- ساخت چتروم
- ساخت بازی های آنلاین تحت مرورگر وب
مزایای node.js
کراس پلتفرمه ؛ یعنی میشه روی پلتفرمهای مختلفی ازش استفاده کرد؛ ( مثلاً با استفاده از تکنولوژی Electron.js میشه از کدهای تحت وب برای نوشتن برنامههای دسکتاپ استفاده کرد)
یک جامعۀ پشتیبان قوی و بزرگ داره؛
با تمام سیستم عاملهای موجود سازگاره؛
دیباگ یا همون خطایابی به نسبت آسونه