Express.js چیست و چرا انقدر مهمه ؟‌

Express.js چیست و چرا انقدر مهمه ؟‌


اشتراک گذاری :

۱۳۹۸/۷/۱۷- تعداد بازدید : ۱۲۹۸ بار - دسته بندی : طراحی وب

express.js یا اکسپرس جی اس چیست ؟‌- آموزش های نود جی اس

 

در این مقاله قصد داریم درباره ی express.js بنویسیم و بگیم که چرا در بحث وب مطرح میشه و مهمه ؟‌

خب express.js همانطور که در سایت خودش نوشته یک فریمورک سریع ، بی درد سر و سبک وزن یا مینیمال برای نود جی اس است .

Fast, unopinionated, minimalist web framework for Node.js

 

به زبان جاوا اسکریپت نوشته شده است و تنها بعنوان یک لایه ی نازک ویژگی های هسته ی وب عمل میکند . بر خلاف فریمورک های بزرگ و پردردسر مثل Ruby on Rails  اکسپرس هیچگونه تمپیلت انجین یا ORM جانبی ندارد . اکسپرس توسط کامپوننت های دیگر ساخته نشده است . 

کار اکسپرس این است که یک ابزاری برای دستان برنامه نویسان وب بسازد که ساخت سایت با Node.js را راحت بکند . 

نصب راحت و محیط کدنویسی خالی با جاوا اسکریپت ، اکسپرس را بهترین گزینه برای توسعه ی سریع و راحت ، میکند . 

express.js بهترین گزینه برای استارتاپ هایی است که میخواهند سریعا یک محصول تولید کنند و زیاد درگیر مسائل پیچیده کدنویسی نشوند . 

بیایید دقیقا express.js را بررسی کنیم و ببینیم که چطور کار میکنه ، خب اول مقاله باید این نکته را بدونید که پیش نیاز  express.js فهمیدن Node.js است . 

محیط Node.js بخشی اساسی برای ساخت و استقرار express.js است . تقریبا میشه گفت Node.js یک مفسر کراس - پلتفرم برای جاوا اسکریپت است  که قادر به اجرای جاوا اسکریپت بصورت نامحدود برای مرورگرهاست . 

در واقع Node.js به جاوا اسکریپت کمک میکند تا بتواند در سمت سرور هم نقش بازی کند و بعنوان یک زبان برنامه نویسی سمت سرور بجای زبان های PHP, Python, Java و ... اانتخاب شود . 

توسط پکیج منیجر نود یا همان npm میتوان express.js را نصب کرد و Node.js از پیش نصب شده را شخصی سازی کرد . 

برنامه نویسان Node.js هزاران کتابخانه ی اوپن سورس به این شکل نوشته اند که میتوانید استفاده کنید . 

این وب سرور ساده را بررسی کنید :‌

server.js
```
var express = require('express');
var app = express();


app.get('/', function(req, res){
           res.send('<h1>Hello World!</h1>');
});


app.listen(8000);
```

 

توسط چند خط ساده شما میتوانید یک سرور درست کنید و به مرورگر بگید در ادرس  localhost:8000 بهش دسترسی داشته باش !

با آمدن جاوا اسکریپت به سمت سرور ، توسعه دهندگان وب از دو راه سودبری میکنند :

  1. تک زبانه شدن کل وب سایت ( بک اند و فرانت اند ) با جاوا اسکریپت در زمان توسعه وب بسیار صرفه جویی میکند .
    براساس نظرسنجی سایت استک اور فلو در سال 2017  جاوا اسکریپت بیشترین کاربرد را در بین زبان های برنامه نویسی وب دارد و همچنین جاوا اسکریپت در حال رشد سریع است همانطور که فریمورک های سمت فرانت اند مثل vue.js , Angular.js و React.js رشد سریع و خوبی داشتند . وقتی شما با جاوا اسکریپت کدنویسی میکنید در حقیقت روی یک زبان اساسی کدنویسی میکنید که اکثر برنامه نویس ها آنرا میفهمند . جاوا اسکریپت محبوب ترین تکنولوژی توسعه ی وب است پس همیشه جامعه ی اطراف آن شلوغ است و مخاطبان زیادی دارد . یکی شدن زبان برنامه نویسی فرانت اند و بک اند سایت شما اول اینکه باعث خلاقیت تیم شما و بعد باعث صرفه جویی در وقت و هزینه ها خواهد شد . 
  2. مزیت بعدی یک زبان non-blocking event-driven هست فکر کنید یک ترافیک فله ای روی سرور اتفاق بیوفتد ، جاوا اسکریپت بخونی میتواند با استفاده از یک ترد واحد event loop ، ترافیک همزمان را کنترل کند . اساسا جاوااسکریپت برای سایت های شلوغ و پرترافیک بهتر است . وقتی یک درخواستی برای دسترسی به یک منبعی به هر دلیلی از بین میرود جاوااسکریپت منتظرش نمی ماند و به کارهای دیگر خود میرسد . جاوا اسکریپت زمانی که نتیجه ی درخواست آمد به آن میبپردازد . همه ی این کارها روی پردازش یک نخ یا ترد انجام میگیرد و به همین دلیل باعث میشود node.js هم منابع سروری کمتری نیاز داشته باشد . 

 

خب express.js چطور در همه ی این موارد کاربرد دارد ؟‌ express.js تمام ابزارهای مورد نیاز برای کار با یک سرور مبتنی بر HTTP را در اختیار توسعه دهنده های وب قرار میدهد . 

Node  یک محیط است این یک چیز اساسی است . Express هر آنچه که برای ورود و خروج داده ها روی سرور نیاز باشد در اختیارتان قرار میدهد ولی موارد زیر را شامل نمیشود :‌

 

  • object relational mapping
  • database
  •  templating engine

 

قابلیت های اکسپرس به توسعه دهنده های وب آزادی میدهد ، express.js تنها یک ماژول برای Node.js نیست و شما میتوانید هر کامپوننت مورد نیاز را به آن اضافه کنید . به جای اینکه در یک قالب و سبکی ثابت بمانید express.js با موارد زیر میتواند تعامل داشته باشد و همکاری کند :‌

به راحتی شما میتوانید با یک کامپوننت template کار کنید و سپس express خود را به یک سرور API تبدیل کنید . خروجی چیزی نخواهد بود جز JSON 

 

با ذخیره سازی داده ها توسط express نیز از آزادی بهره مند خواهید شد . شما میتوانید از یک ماژول Node به نام Mongoose استفاده کنید و میتوانید express خود را به MongoDB وصل کنید ! 

ضمنا شما میتوانید به RedisSQLPostgres  هم وصل شوید . 

خب شما اینجا آزادی دارید که کدام دیتابیس را برای کارهای خود انتخاب کنید چیزی که مناسب هست را انتخاب کنید برخلاف فریمورکی مثل Django که با پایگاه داده ی غیر رابطه ای مثل MongoDB کار نمیکند ، برای این مورد راه حل وجود دارد ولی پشتیبانی رسمی مهم است . 

 

توسعه دهندگان میتوانند express را دقیقا بر اساس نیاز خودشان شخصی سازی بکنند . میتوانند کامپوننت های اضافی را حذف یا کامپوننت های مورد نیاز جدیدی را اضافه کنند . 

شما تقریبا میتوانید هر چیزی را تولید کنید از یک سرور محتوای ثابت گرفته تا  RESTful APIs  برای فریمورک های Model-View-Controller (MVC) 

 

 

جمع بندی و خلاصه ی نوشته های بالا :‌

 

خب پس فهمیدیم که Express.js یک فریمورک برای اپلیکیشن های تحت وب است که API ساده ای برای ساخت وب سایت ها ، وب اپلیکیشن ها و بک اند ها است . 

با ExpressJS دیگر نیاز نیست نگران پروتکل های سطح پایین ، پردازش ها و ... باشید . 

 

Express چیست ؟‌ 

 

Express یک interface مینیمال برای ساخت اپلیکیشن های ما فراهم میکند . برای ما ابزارهایی را فراهم میکند که برای ساخت اپ های خود نیاز داریم . 

بسیار انعطاف پذیر است و ماژول های فراوانی برایش روی npm وجود دارد که مستقیما میتوانید انها را در  Express  وارد کنید . 

Express توسط  TJ Holowaychuk توسعه داده شده است و توسط Node.js نگهداری و پشتیبانی میشود . 

 

چرا Express ؟‌

 

بر خلاف رقبایش مثل Rails و Django که روش های خاصی دارند و مستبد هستند Express هیچ روشی را بعنوان بهترین روش پیشنهاد نمیکند . Express بسیار انعطاف پذیر و ماژولار است . 

 

Pug

 

Pug که قبلا با اسم Jade شناخته میشد یک زبان دقیق برای نوشتن قالب های HTML است . 

  • تولید HTML
  • پشتیبانی از کد dynamic
  • پشتیبانی مجدد از قابلیت استفاده (DRY)
  •  

این یکی از محبوب ترین زبان قالب است که با Express استفاده می شود.

 

MongoDB و Mongoose

MongoDB یک پایگاه داده ، اوپن سورس ، مقیاس پذیر و document database هست که برای توسعه راحت ساخته شده است . 

همچنین برای ذخیره سازی اطلاعات استفاده میشود 

Mongoose یک API برای کلاینت node.js است که دسترسی پایگاه داده توسط Express را راحت تر میکند . 

 

 

تمام 

 

 


محصولات برگزیده مناسب شما
مطالب زیر ممکن است برای شما مفید باشد
چرا باید از Node.js استفاده کنیم ؟‌ ( بررسی کلی ) تماس با ما بک لینک ها و انواع آنها آموزش ساخت اسلایدر از URL و واکشی تصاویر از سرور در اسلایدر در محیط Android Studio مقایسه Kotlin با Java برای برنامه نویسان اندرویدی
مدرس : مهندس عباس نیک زاد
سوابق تحصیلی
  • دیپلم ریاضی و فیزیک از تیزهوشان
  • لیسانس کارشناسی مهندسی نرم افزار
  • کارشناس ارشد هوش مصنوعی
  • دارای مدرک IELTS نمره ۷/۵
  • دارای مدرک GMAT نمره ۷۲۰
سوابق شغلی
  • مدیر کل شرکت آوای هوشمند سام به شماره ثبت ۴۴۸۳۸ و شناسه ی ملی ۱۴۰۰۶۷۷۷۰۵۱
  • تدرس در دانشگاه ها و آموزشگاه های معتبر از سال ۱۳۹۴
  • مدرس دوره های آموزشی در زمینه ی برنامه نویسی از سال ۹۵ ( آواسام ، سامنتا )
  • مدیر کل انجمن علمی دانشگاه به مدت یکسال و مدیر انجمن علمی کامپیوتر به مدت یکسال
  • برنامه نویس اپلیکیشن های اندرویدی مختلف برای سازمان های دولتی ، شرکت های خصوصی و ...
  • بازی سازی با انجین یونیتی به مدت دو سال در تیم k2games
  • برنامه نویسی و طراحی وب بصورت فریلنسر از سال ۱۳۹۰
تخصص ها
  • تسلط کامل بر فریمورک های PHP همچون Codeigniter , Laravel , Yii , ….
  • برنامه نویسی موبایل و تبلت های هوشمند اندرویدی به مدت ۴ سال با زبان Java kotlin objective-c javascript
  • مسلط به مفاهیم گرافیکی و نرم افزار های گرافیکی Photoshop , corel , illustrator و …
  • مسلط به مدلسازی سه بعدی Blender
  • مسلط به بازی سازی و زبان سی شارپ در انجین Unity3D
  • تسلط کامل بر مفاهیم هوش مصنوعی
  • متخصص در زمینه لینوکس
  • تسلط کامل برنامه نویسی زبانهای C , Python , C++ , C# , Java , JavaScript
  • تسلط کامل بر فریمورک ها یا کتابخانه های محبوب جاوااسکریپت نظیر Angular , Vue.js , React , Jquery و …
  • مطالعه و فعالیت در زمینه ی امنیت و هک

برچسب ها : نود جی اس اکپسرس جی اس آموزش فریمورک های نود جی اس بهترین فریمورک های نود جی اس برنامه نویسی جاوااسکریپت سمت سرور آموزش express آموزش اکسپرس آموزش express.js اکسپرس چیست express.js چیست

برای نوشتن نظر باید وارد شوید ورود

بازگشت به بالا
توجه داشته باشید که به ازای هر نظر مفید در سایت آواسام هزار تومان بصورت خودکار به کیف پول شما افزوده میشود