مقدمة إلى ExpressJS [+6 Learning Resources]

ExpressJS هو إطار عمل ويب Node.js مبسط ومرن يوفر مجموعة من الميزات لكل من تطبيقات الجوال والويب.

تم تطوير إطار عمل الويب مفتوح المصدر هذا بواسطة TJ Holowaychuk. يتم صيانة ExpressJS بواسطة مؤسسة Node.js.

لماذا ExpressJS؟

يوفر ExpressJS واجهات برمجة تطبيقات بسيطة لمساعدة المطورين على إنشاء واجهات خلفية وتطبيقات ويب ومواقع ويب. وبالتالي فإن إطار عمل الويب هذا يمكن مقارنته ببيثون Django و Ruby’s Rails.

ومع ذلك ، على عكس Django و Rails ، اللذان لديهما طريقة عنيدة لبناء واجهات برمجة التطبيقات / التطبيقات ، فإن ExpressJS مرن للغاية وقابل للتوصيل ، حيث لا يوجد لديه “أفضل طريقة” للقيام بالأشياء.

للتلخيص ، هذه هي الأسباب التي تجعلك تستخدم ExpressJS ؛

  • من السهل إنشاء واجهات برمجة التطبيقات وتطبيقات الويب.
  • واجهات برمجة التطبيقات الخاصة به قوية ، مما يجعل التوجيه سهلاً
  • غير متزامن وخيوط واحدة

ميزات ExpressJS

# 1. جزء من MEAN Stack

تظل JavaScript واحدة من أكثر لغات البرمجة شيوعًا حيث تحتوي على أطر يمكن استخدامها على كل من الواجهة الأمامية والخلفية لتطبيق مكدس كامل.

بعض مطوري جافا سكريبت يستخدمون MEAN ، الصيغة القصيرة لـ MongoDB ، Express ، Node. js و AngularJS لإنشاء تطبيقات كاملة المكدس. يفضل بعض المطورين Reactjs ويستخدمون مكدس MERN (MongoDB و Express و Node. js و Reactjs). في كلا الخيارين ، تظل Expressjs ثابتة.

# 2. مرن وسريع

لا يتعين عليك إتقان العديد من الأجزاء المختلفة من إطار عمل أكبر ، حيث تم تصميم ExpressJS ليكون أضيق الحدود. إن وجود نظام توجيه ممتاز ، والتفاوض على المحتوى مباشرة ، والأدوات الوسيطة تجعله سريعًا.

# 3. القابلة للتطوير

من السهل توسيع نطاق التطبيقات المبنية على Express ، مع توضيح سبب استخدام العديد من المؤسسات له. عند تطوير تطبيقات واسعة النطاق ، لا يحتاج Express إلى تكوين إضافي. إن وجود العديد من الوحدات والحزم والموارد الإضافية يجعل تطوير التطبيقات واسعة النطاق أمرًا عمليًا بسهولة.

  ما هي المعاملات الدقيقة ولماذا يكرهها الناس؟

# 4. وجود برمجيات وسيطة

يحتوي ExpressJS على سلسلة من تطبيقات البرامج الوسيطة لتسريع عملية التطوير وتحسينها. تجعل البرمجيات الوسيطة من السهل على إطار العمل تشغيل نص نموذجي قبل أو بعد طلب العميل. يسهّل وجود البرامج الوسيطة للمطورين التحقق من إجراءات العميل مثل عمليات التسجيل / الدخول وتسجيل الخروج.

# 5. نظام توجيه قوي

يسمح نظام التوجيه في ExpressJS للمطورين بإنشاء واجهات برمجة تطبيقات قوية تتعامل مع جميع طلبات HTTP تقريبًا. لا يتعين عليك أن ينتهي بك الأمر بنظام توجيه متضخم ، حيث يمكنك تقسيم التعليمات البرمجية الخاصة بك إلى ملفات يمكن التحكم فيها باستخدام مثيل جهاز التوجيه. يمكنك أيضًا تجميع طرق مختلفة في دليل / مجلد واحد لإدارة تطبيقك بشكل أفضل.

هندسة ExpressJS

ائتمان الصورة: turing.com

سيكون للتطبيق السريع المكونات التالية ؛

  • التبعيات. ExpressJS نفسها هي تبعية. يمكنك تثبيت التبعيات الأخرى باستخدام الأمر npm.
  • الوسيطة. البرمجيات الوسيطة في إعداد ExpressJS هي الوظيفة التي تحدد دورة الطلب / الاستجابة.
  • تجسيد. هذه مجرد عبارات تستخدم لإنشاء كائن.
  • التكوينات. التكوينات عبارة عن إعدادات مخصصة تستند إلى التطبيق يتم تحديدها بعد عمليات إنشاء مثيل أو في ملف منفصل
  • طرق. المسارات هي نقاط النهاية التي يستخدمها العملاء للوصول إلى موارد مختلفة أو تنفيذ إجراءات معينة يحددها الخادم.
  • خادم التمهيد. يتم تنفيذ وظيفة app.listen () لبدء خادم التطوير.

الشروع في العمل: ExpressJS

يعمل ExpressJS على Node.js ، مما يعني أنك بحاجة إلى تثبيته على جهاز الكمبيوتر الخاص بك.

تحتاج أيضًا إلى Node Package Manager (npm) لإدارة جميع التبعيات على بيئة التطوير الخاصة بك.

يمكنك تثبيت Node من خلال موقعه الرسمي بناءً على نظام التشغيل الخاص بك.

بمجرد الانتهاء ، قم بتشغيل هذين الأمرين للتأكد من تثبيت العقدة و npm ، على التوالي.

node --version
npm --version

قم بتثبيت ExpressJS

اتبع هذه الخطوات

  • قم بإنشاء تطبيق ExpressJS بسيط. يمكنك إنشائه يدويًا أو استخدام هذه الأوامر
mkdir myapp
cd myapp
  • قم بإنشاء ملف package.json باستخدام هذا الأمر
npm init
  • اقبل الأوامر بناءً على المطالبات المقدمة. ومع ذلك ، التغيير ؛ نقطة الدخول: (index.js) إلى app.js
  • قم بتثبيت ExpressJS باستخدام هذا الأمر
npm install express
  • عرض “Hello World”
  كيفية منع انكسار كابلات شاحن هاتفك

أثناء وجودك داخل الدليل الجذر ، قم بإنشاء ملف وقم بتسميته app.js

أضف هذا الرمز

const express = require('express')

const app = express()

const port = 3000

app.get('/', (req, res) => {

  res.send('Hello World!')

})

app.listen(port, () => {

  console.log(`Example app listening on port ${port}`)

})

قم بتشغيل هذا الأمر لبدء الخادم المحلي

node app.js

اذهب إلى http: // localhost: 3000 / في متصفحك ، وستجد هذا الناتج

مولد التطبيق السريع

التطبيق الذي أنشأناه يدويًا أعلاه أساسي جدًا. ومع ذلك ، يمكنك الهروب من الإنشاء اليدوي لتطبيق ExpressJS باستخدام المولد السريع.

  • هذا هو الأمر لإنشاء تطبيق ExpressJS الخاص بك.
npx express-generator
  • إذا كنت تستخدم إصدارًا أقدم من 8.2.0 من node.js ، فيمكنك تثبيت منشئ التطبيق وتشغيله باستخدام هذه الأوامر ؛
npm install -g express-generator
express
express --view=pug myapp

سيُنشئ الأمر أعلاه تطبيقًا باسم “myapp”

  • قم بتثبيت جميع التبعيات المطلوبة باستخدام هذه الأوامر
cd myapp

npm install
  • قم بتشغيل خادم التطوير وفقًا لنظام التشغيل الخاص بك

على Windows PowerShell ؛

PS> $env:DEBUG='myapp:*'; npm start

في موجه أوامر Windows ؛

> set DEBUG=myapp:* & npm start

على نظام macOS أو Linux ؛

DEBUG=myapp:* npm start

قم بالوصول إلى http: // localhost: 3000 / على متصفحك ، وهذا ما سيتم عرضه

# 1. تطبيقات Fintech

تتجه البنوك والمؤسسات المالية إلى التحول الرقمي ، مما يزيد الطلب على تطبيقات التكنولوجيا المالية. تُستخدم هذه التطبيقات لدعم / تمكين الخدمات المالية والمصرفية. أثبت ExpressJS أنه إطار عمل قوي لإنشاء تطبيقات fintech قابلة للتطوير.

# 2. تطبيقات التطبيق الواحد

أصبحت تطبيقات التطبيق الفردي ، حيث يتم توجيه التطبيق بأكمله على صفحة واحدة ، هي الطريقة الحديثة لتطوير التطبيقات. تطبيقات الجوال والويب الكبيرة مثل Airbnb و Netflix و Pinterest و Paypal و Gmail وخرائط Google هي أمثلة مثالية لتطبيقات التطبيق الواحد. يعد ExpressJS إطارًا مثاليًا لإنشاء تطبيقات أحادية التطبيق مع توجيه سهل.

# 3. تطبيقات الجري

قد تبدو تطبيقات مثل Spotify و Netflix بسيطة للمستخدمين النهائيين. ومع ذلك ، فإن هذه التطبيقات معقدة ولها طبقات متعددة من البيانات. يعد ExpressJS خيارًا رائعًا لإنشاء مثل هذه التطبيقات حيث يمكنه التعامل بكفاءة مع تدفقات البيانات غير المتزامنة.

# 4. أدوات التعاون في الوقت الفعلي

تتكون بيئات العمل الحديثة من فرق تتعاون في مهام مختلفة لتحقيق هدف مشترك. يأتي ExpressJS مزودًا بالعديد من الميزات التي تدعم تطوير الأدوات التعاونية. يُعد إطار العمل هذا مفيدًا أيضًا عند إنشاء لوحات معلومات ومحادثات تطبيق في الوقت الفعلي ، حيث يسهل تكامله مع WebSocket.

  أفضل الطرق للعثور على فرد مفقود من العائلة

المزايا: ExpressJS

  • مجاني ومفتوح المصدر. لا يتعين عليك دفع أي شيء لاستخدام ExpressJS. يمكنك أيضًا تعديل الكود الحالي ليناسب احتياجاتك.
  • سهولة الاستعمال. يتيح لك ExpressJS كتابة التعليمات البرمجية دون اتباع العمليات المعقدة. يحتوي الإطار بالفعل على الكثير من الأدوات والميزات لتبسيط العملية.
  • التطور السريع. يحتوي ExpressJS على العديد من القوالب لضمان عدم إنشاء كل شيء من البداية.
  • أداء رائع. تقدم التطبيقات التي تم إنشاؤها على ExpressJS أداءً مثاليًا ، وبالتالي يمكنك استخدامه على كل من التطبيقات الصغيرة وتطبيقات المؤسسات.

العيوب: ExpressJS

  • بعض رسائل الخطأ ليست مفيدة. على عكس أطر تطوير الواجهة الخلفية / API الأخرى ، لا تشير استجابات 404 في ExpressJS بالضرورة إلى وجود خطأ.
  • ليس جيدًا في تنظيم الكود حيث لا توجد طريقة أفضل للقيام بالأشياء.

مصادر التعلم: ExpressJS

# 1. Node.js و Express و MongoDB والمزيد

تعتبر هذه الدورة التدريبية مثالية إذا كنت ترغب في تعلم الحزمة الخلفية بالكامل من مورد واحد. في نهاية الدورة التدريبية ، يمكنك إنشاء واجهات برمجة تطبيقات RESTful سريعة وقابلة للتطوير باستخدام ExpressJS والتقنيات الأخرى المرتبطة.

# 2. فقط اكسبريس

هذه هي الدورة التدريبية التي يجب اتخاذها إذا كنت ترغب في تشغيل Express Server كواجهة برمجة تطبيقات REST. تعلم هذه الدورة أيضًا أساسيات HTTP وتجعل من السهل فهم دورة الطلب / الاستجابة.

# 3. React و NodeJS و Express و MongoDB

تعد دورة MERN الكاملة هذه مثالية إذا كنت ترغب في معرفة كيفية إنشاء تطبيقات JavaScript كاملة المكدس. بعض الأشياء التي ستتعلمها هي كيفية توصيل ReactJS بـ NodeJS و Express & MongoDB وكيفية تنفيذ المصادقة والتفويض وغير ذلك الكثير.

# 4. Express in Action: كتابة وبناء واختبار تطبيقات Node.js

Express in Action هو كتاب يشرح بالتفصيل خطوات إنشاء تطبيقات الويب باستخدام Node و ExpressJS. سوف تتعلم كيفية إعداد تطبيق ExpressJS ، وتخزين البيانات باستخدام MongoDB ، وكيفية اختبار تطبيقات Express ، من بين أشياء أخرى كثيرة.

# 5. Express.js: كتاب إرشادي حول إطار عمل الويب لـ Node.js

Express.js: دليل الكتاب على إطار عمل الويب لـ Node.js يوفر استكشافًا متعمقًا لإطار عمل ويب ExpressJS. تستند المناقشات في هذا الكتاب إلى النماذج المختلفة التي توفرها ExpressJS للمستخدمين.

# 6. الوثائق الرسمية لـ ExpressJS

ExpressJS هو إطار عمل node.js موثق جيدًا ، ويمكنك تعلم كل ما تحتاجه للبدء في المستندات الرسمية. يمكنك استخدام هذا المورد بغض النظر عما إذا كنت قد بدأت للتو أو مطورًا متقدمًا.

تغليف

يعد ExpressJS أحد أشهر أطر عمل الويب الخاصة بـ Node.js في العالم الحديث. مجموعة الميزات القوية ومنحنى التعلم السهل جعلها تحتل هذا المنصب على مر السنين. يعمل ExpressJS كأساس لـ Node.js ، مما يعني أن فهمه يجعل من السهل فهم الأطر الأخرى المرتبطة.