التطوير في جافا سكريبت - دورة 39500 فرك. من مركز تدريب IBS، مدة التدريب 40 ساعة، التاريخ 26 نوفمبر 2023.
Miscellanea / / November 28, 2023
المواضيع التي تمت تغطيتها:
1. لغة جافا سكريبت:
إصدارات جافا سكريبت وتطبيقاتها؛
مجالات تطبيق JavaScript (المتصفح، الخادم، تطوير الأجهزة المحمولة)؛
أنواع البيانات: السلسلة، والرقم، والمنطقية (مفهوم الصدق والخطأ)؛
المشغلين، أسبقية المشغل؛
إعلان المتغيرات: var, const, Let;
الحلقات: بينما، من أجل، من أجل، من أجل، من؛
العمل مع الأرقام والسلاسل.
القيم الفارغة وغير المحددة: الاختلافات وأغراض التطبيق؛
العمل مع وحدة التحكم
الاستثناءات في جافا سكريبت.
2. JSON والكائنات والمصفوفات:
تنسيق JSON، أمثلة؛
JSON.parse وstringify؛
الكائنات، والعمل مع فئة الكائن؛
إنشاء كائنات (باستخدام الحرفي {}، العامل الجديد، طريقة الإنشاء)؛
الميراث النموذجي، المرجع __proto__؛
الحاصلون والمستوطنون.
عامل التشغيل in و hasOwnProperty، مفهوم الخصائص القابلة للإحصاء؛
طريقة toString()، استدعاء الطريقة وتجاوزها؛
طريقة valueOf()، استدعاء الطريقة وتجاوزها؛
إنشاء المصفوفات: القيم الحرفية والمصفوفة الجديدة () ؛
التغيير التلقائي لطول المصفوفة؛
الحصول على طول المصفوفة وتعيينه، واقتطاع المصفوفة؛
استخدام أساليب join() وconcat();
باستخدام طريقة الفرز، قم بتعيين ترتيب فرز المصفوفة؛
استخدام طرق الشريحة واللصق؛
استخدام أساليب الدفع، والبوب، والتحويل، وإلغاء النقل: إنشاء مكدس أو قائمة انتظار.
3. العمل مع التواريخ والسلاسل:
استخدام مُنشئ التاريخ () الجديد؛
فهم تمثيل الكمبيوتر للتاريخ كوقت مع Epoch؛
باستخدام getTime() وsetTime();
تحليل تمثيل سلسلة التواريخ؛
خيارات لإنشاء سلاسل في JS: استخدام علامات الاقتباس المفردة والمزدوجة؛
استيفاء السلسلة (سلسلة في الفواصل العليا)؛
الهروب من الأحرف الخاصة في سلسلة؛
تسلسل السلسلة، التحويل إلى الأحرف الكبيرة والصغيرة؛
البحث عن سلسلة فرعية باستخدام IndexOf() و lastIndexOf();
تحديد سلسلة فرعية باستخدام سلسلة فرعية () وsubstr ()
باستخدام الأساليب include، وendsWith، وstartsWith.
4. استخدام جافا سكريبت في المتصفح: نموذج DOM:
إدارة نافذة المتصفح والمستندات والأحداث والتصميم (أنماط CSS)؛
كائن النافذة واستخداماته؛
ربط كود JavaScript بصفحة HTML؛
ترتيب تنفيذ البرامج النصية على الصفحة؛
التخزين المؤقت للبرنامج النصي، وخوادم CDN، وإعادة التحميل القسري لجافا سكريبت؛
العمل مع الروابط، وربط JavaScript بالروابط؛
حدث التحميل واستخدامه؛
هجمات XSS على الموقع؛
العمل مع DOM: استخدام النافذة والمستند وchildNodes؛
التعامل مع مستند باستخدام DOM: إنشاء العناصر وحذفها ونقلها؛
استخدام getElementById() وgetElementsByTagName() وgetElementsByClassName() للعثور على العناصر الموجودة في الصفحة؛
العمل مع أساليب وخصائص HTMLDocument وHTMLElement.
5. العمل مع الأحداث في المتصفح:
مفهوم برمجة الأحداث؛
معالجات الأحداث والمستمعين؛
ربط المعالجات باستخدام addEventListener();
خصائص وأساليب فئة الحدث؛
انتشار الأحداث لأعلى (فقاعة) ولأسفل (التقاط)؛
وقف الانتشار.
أحداث النافذة؛
أحداث الماوس ولوحة المفاتيح، وخصائص الأحداث الخاصة؛
أحداث النموذج؛
6. العمل مع CSS وإدارة الأنماط:
معيار CSS، خصائص CSS الأساسية؛
الأنماط العامة وأنماط العناصر الفردية؛
الأنماط المتتالية
محددات CSS؛
تعديل CSS باستخدام JavaScript؛
الحشو: الهامش، الحشو، الحدود؛
التحكم في رؤية العناصر: الرؤية والعرض؛
تحديد موضع العناصر: مطلق، ثابت، نسبي، ضبط الأعلى واليسار؛
وحدات القياس بكسل، نقطة وغيرها؛
تجاوز العنصر والتحكم فيه عبر خاصية التجاوز؛
إدارة طبقات الوثيقة: خاصية zIndex؛
الرسوم المتحركة وحركة العناصر.
العمل مع الطبقات، وتحديد className؛
العمل مع الشفافية والتحولات؛
طريقة querySelectorAll().
7. العمل مع الوحدات النمطية في JavaScript، ومدير حزم NPM، ومنشئ Webpack:
أسباب استخدام الوحدات؛
تصدير من الوحدة؛
استيراد من الوحدة النمطية؛
إعادة التصدير؛
العمل مع NPM، ملف package.json؛
مجلد العقدة، تنزيل الحزم باستخدام NPM؛
تركيب الحزم العالمية والمحلية؛
استخدام حزمة الويب لبناء مشروع؛
محملات CSS وTypeScript؛
التكوين webpack.config.js؛
إنشاء الحزمة، والضغط؛
ملحقات حزمة الويب؛
استخدام الأنظمة النمطية القديمة – CommonJS وAMD؛
باستخدام CommonsChunkPlugin، نقاط دخول متعددة؛
وحدات HMR قابلة للتبديل السريع.
8. الفئات والميراث في جافا سكريبت:
وراثة النموذج الأولي، المرجع __proto__؛
النموذج الأولي للكائن؛
باستخدام مثيل؛
فئة الكلمات الرئيسية، وإنشاء الطبقات؛
الكلمة الرئيسية سوبر؛
باستخدام طريقة Object.assis()؛
باستخدام الأسلوب Object.defineProperty()؛
الحاصلون والمستوطنون.
عامل الانتشار للعمل مع الكائنات والمصفوفات؛
تدمير صفيف وكائن.
9. البرمجة الوظيفية في جافا سكريبت:
وظائف كمتغيرات.
وسيطات الصفيف؛
فئة الوظيفة وطرق الاتصال () والتطبيق () ؛
طريقة الربط () وتعيين هذا وبعض المعلمات باستخدام الربط؛
عمليات الإغلاق في جافا سكريبت؛
تغليف القيم باستخدام عمليات الإغلاق؛
إنشاء دالة من خلال مُنشئ الوظيفة: إنشاء سلسلة؛
وظائف السهم، أمثلة على تطبيقها؛
معالجة المصفوفة الوظيفية: find، findIndex، filter؛
أمثلة على استخدام الخريطة/التصفية/التقليل لمعالجة البيانات في المصفوفة.
10. الثبات، الاختبار، نمط MVC:
مفهوم الثبات ومزاياه؛
الأساليب القابلة للتغيير وغير القابلة للتغيير لتغيير الكائنات والمصفوفات؛
مفهوم ومزايا Virtual DOM؛
اختبار الوظائف غير القابلة للتغيير، باستخدام Jest؛
الحفظ، مميزاته؛
الأخطاء والتوصيات الأساسية عند استخدام البرمجة الوظيفية؛
نمط MVC، إنشاء واجهة المستخدم؛
نظرة عامة على المكتبات الرئيسية لتطوير الواجهة: Angular، React، Vue.
11. عدم التزامن في جافا سكريبت. وعود:
مفهوم وضرورة عدم التزامن؛
العمل مع setTimeout، setInterval، ClearTimeout؛
وظائف رد الاتصال (رد الاتصال)؛
فقدان هذا عند العمل مع وظيفة رد الاتصال. الحلول (باستخدام وظائف الربط والسهم وما إلى ذلك)؛
مفهوم الوعود، إرجاع وعد من وظيفة غير متزامنة؛
طريقة Promise.all() وتطبيقاتها؛
بناء الجملة غير المتزامن/الانتظار، وحالات الاستخدام، والقيود؛
التعامل مع حالات الطوارئ: رفض الوعد، ومعالجة الاستثناءات للمكالمات غير المتزامنة.
12. العمل مع الخادم. بروتوكول HTTP. خدمات الراحة:
بروتوكول HTTP؛
رؤوس وأساليب HTTP (GET، POST، PUT، DELETE، وغيرها)، ونقل البيانات؛
خوادم HTTP (نظرة عامة)؛
رموز استجابة خادم HTTP؛
استخدام النماذج لإرسال البيانات؛
نقل البيانات إلى الخادم باستخدام AJAX؛
بنية REST: المزايا والميزات؛
تنفيذ CRUD (عمليات الإنشاء/القراءة/التحديث/الحذف) عند العمل مع REST؛
استخدام الدالة fetch() لاستقبال وإرسال البيانات؛
توثيق خدمات REST باستخدام Swagger؛
مفهوم HATEOAS وتطبيقه؛
13. مكتبة اكسيوس. بروتوكول ويب سوكيت:
مقارنة مكتبة Axios عالية المستوى واستخدام الجلب منخفض المستوى () ؛
طلبات الحصول على البيانات ونشرها في Axios؛
استخدام المزامنة/الانتظار مع Axios؛
معالجة الأخطاء عند استخدام Axios؛
إلغاء الطلب باستخدام أكسيوس؛
بروتوكول WebSocket؛
أمثلة على استخدام WebSocket، المقارنة مع HTTP؛
الرسوم المتحركة HTML؛
ملحوظة
يتم تقديم مواد الدورة باللغة الإنجليزية.