Waleed Khattab
Waleed Khattab

@WaleedKhattab11

12 تغريدة 79 قراءة Nov 18, 2019
ثريد كامل و مطول عن ال Node.JS و كل ماتود معرفته عن الNode
ماهي ؟ و ليش استخدمها ؟ ايش افضل الframework اللي ممكن استخدمها مع الNode
؟ ايش هو مبدأ الNode JS ؟
نبدأ :
#nodejs #برمجة #برمجة_ويب #ويب #جافا #جافاسكريبت #سي_بلس_بلس #برمجيات #تعلم #برمجه #علم_حاسوب #داتا_بيز
ماهي الNode.Js ؟
كثير من الناس يعتقد ان النود هي لغة برمجة وهاد مفهوم خطأ :) ,
النود هي run-time environment لـلغة JavaScript و دورها انها تنفذ كود الJS بالBackend وخارج المتصفح , اذا الكود اللي ينكتب بالNode هو باللغة جافاسكربت.
#جافاسكربت #جي_اس
طيب ايش يميز الNode كـBackend عن غيرها؟؟
طبعا النود تعمل بال Single thread لذلك تعتمد على الasynchronous functions
الي بتشتغل بطريقة تسمو ال event loop اللي ممكن تنشرح بثريد لوحدها
لكن راح اتكلم عن ال Asynchronous functions بشكل بسيط وسريع ...
بشكل بسيط وسريع وبدون تعقيدات كثيره راح اضرب مثال عن طريقة عمل الNode مع الطلبات القادمة للسيرفر..
مثال : في المطاعم عندما يقوم الموظف بأخذ الطلب من الزبون ثم يذهب ويوصل الطلب للشيف وبينما الشيف يقوم باعداد الطلب يبقى الموظف بإنتظار الطلب لحتى يجهز ثم يقوم بتوصيله
يتبع ..
بعد التوصيل يقوم بأخذ طلب زبون اخر وعلى هذا المنوال ( هذا ماتعمل به اغلب لغات البرمجة التقليدية )
- لكن في نفس الوقت وفي مطعم اخر , يقوم الموظف بأخذ طلب الزبون و ايصاله للشيف و لكن لاينتظر الطبق ليجهز و يذهب لاخذ طلب اخر و ايصاله للشيف حينها يكون الشيف انهى الطبق
يتبع ..
انهى الطبق الاول فيقوم الموظف بإيصاله للزبون و هكذا للباقي ( هذا ماتعمل به الNodeJS)
- اذا هذا هو مبدأ ال Async function اللي تعتمدها ال Node في عملها ..
10 اسباب تجعلك تستخدم ال Node في بناء الBack end خاصتك :
1- السرعه
2- النود تعتمد على جافاسكريبت اللي هي بلاساس موجوده بالFront-end , لتعطيك سهوله بالتعامل و نقل البيانات بين الطرفين
3- ممتازة جدا بال Data Streaming
4- ربط الNode بقواعد بيانات من نوع NoSql يعطيك كفائة وسرعة اكبر , لانها تعتمد في استعلاماتها على ال JSON
5- ممتازة في التطبيقات اللحظيه او Real-time web app , التي تحتاج الى سرعة في نقل البيانات في اقل من ثواني
6- الترابط بين الباك اند و الفرونت اند بنفس اللغة يزيد من الانتاجية
7- ربطها مع الnpm التي تقدم المكتبات والmodules بين بيئة مستخدمي النود
8-امكانية بناء تطبيقاتها عن طريق Cloud PaaS
9- سهولة تعلمها , بسبب اغلب المبرمجين يتقينون الجافاسكريبت
10- اعطاء اكثر من حل للمشكلة البرمجية
اشهر المواقع العالمية التي تعمل بالNode
Netflix
PayPal
LinkedIn
Walmart
Uber
Ebay
الFrameworks المفضلة للاستخدام مع NodeJS لتحصل على افضل نتيجة..
-ExpressJS ( تساعد بالتعامل مع الطلبات القادمة للتطبيق)
-Angular or react ( بناء الفرونت اند بمبدأ ال SPA بلاضافة انها تعتمد على الارسال والاستقبال من API , بما معناه الباك اند مفصول كليا عن الفرونت)
تستطيع ايضا استخدام Heroku او AWS لرفع تطبيقات النود في ثواني فقط!!!
وماننسى ايضا ال MongoDB عشان يصير كلو جافاسكربت بجافاسكربت وخود سرعة و اداء ?
....
انتهى ..
ريتويت عشان الكل يستفيد :)

جاري تحميل الاقتراحات...