نوشتن اولین برنامه توسط نود جی اس

نود جی اس یک ماشین مجازی هست که کد های جاوا اسکریپت رو در بیرون مرورگر به اجرا در میاره و میشه با اون برنامه های تحت وب ساخت ، نود جی اس توسط سی پلاس پلاس و به صورت همروند ساخته شده که میشه با اون درخواست ها رو با سرعت بالا انجام بده ، در این پست به چگونگی ساخت اولین برنامه توسط نودجی اس و جرا کردن آن میپردازیم .
اول از سایت نود جی اس نسخه مربوط به سیستم عامل خودتون رو دانلود و نصب کنید.
جهت اطمینان از نصب اون روی کامپیوتر در cmd یا terminal نوشته زیر را تایپ و اجرا کنید :
node --version
اگه اجرا شد و به شما ورژن نود جی اس مورد نظر را نشان داد ، مشخص میشود که نود جی اس با موفقیت بر روی سیستمتون نصب شده .
حال یک پوشه درست کنید و پروژه خود را استارت بزنید.
یک فایل با پسوند .js به نام index درست کنید .
نود جی اس یک سری ماژول ها به صورت پیش فرض بر روی سیستمتان نصب میکند که از مهم ترین ماژول ها میشه http رو نام برد که وظیفه ساخت سرور بر روی کامپیوتر شما را انجام میدهد ، برای لود کردن ماژول از تابع require استفاده میکنیم به این صورت :
const http = require('http');
ماژول http یک سری تابع ها درون خود دارد . برای ساخت سرور اینچنین عمل میکنیم :
const http = require('http');
const hostname = '127.0.0.1';
const port = 3000;
const server = http.createServer((req, res) => {
res.statusCode = 200;
res.setHeader('Content-Type', 'text/plain');
res.end('Hello World!\n');
});
server.listen(port, hostname, () => {
console.log(`Server running at http://${hostname}:${port}/`);
});
همانطور که میبینین هر درخواست یک request و یک responce دارد که request از طریق client به سرور ارسال میشه و responce از طریق سرور به سمت client ارسال میشه .
فایل را ذخیره کرده و با cmd به پوشه پروژه خود بروید ، به این صورت :
cd C:\yourFolder
و دستور :
node index.js
را اجرا کنید ، میبینید که اولین برنامه نود شما اجرا میشود .
در لاین :
res.statusCode = 200;
از سمت سرور مشخص میکنیم که درخواستی که از طریق client برای server ارسال شده ok بوده و هیچ مشکلی ندارد ، میتوانیم با مراجعه به صفحه ویکی پدیا زیر اطلاعات بیشتری راجب status code ها به دست بیاوریم :
https://en.wikipedia.org/wiki/List_of_HTTP_status_codes
در لاین بعدی :
res.setHeader('Content-Type', 'text/plain');
مشخص میکنیم که نوع محتویاتی که قرار است از سمت server به سوی client ارسال شود از چه نوعی باشد ، مثلا اگر قرار بود به شکل html برای client ارسال شود ، باید لاین مربوطه را به این صورت ادیت میکردیم :
res.setHeader('Content-Type', 'text/html');
همچنین محتوای ارسالی را به شکل html ادیت میکردیم :
res.end('< h1>Hello World!< /h1>');
لاین بالا به این معناست که به request پایان میدهیم و همه چیز آنگونه که تنظیم شده برای client از سوی server ارسال شود .
در این وبلاگ به نحوه ی نوشتن کد استاندارد میپردازیم ، متاسفانه در ایران برنامه نویس ها به نوشتن کد ugly یا زشت عادت کردن ، در اینجا به این میپردازیم که بتونیم کد زیبا و خوانا بنویسیم.